Difference between revisions of "Mesh/Build An OpenWRT Image"

added proxy builds
(Moved OpenWRT image build instructions to a new page)
 
(added proxy builds)
Line 42: Line 42:
*Configure the firmware (needs it's own article)
*Configure the firmware (needs it's own article)
*: ''Kernel Modules > Network Support > kmod-ipsec''
*: ''Kernel Modules > Network Support > kmod-ipsec''
=Building an OpenWRT image using a proxy=
These are the scripts to support using a proxy to build OpenWRT.
They're ugly and hackish. They do not yet automirror downloaded files, which would be rather important.
Assumptions:
User 'sudomesh' builds the firmware.  User 'sudomirror' maintains the mirror.
A third user has root.
There is an http server on localhost, and ~/public_html/ maps to ~username
URLs.
~/bin/ is in your path ahead of systemwide binaries.
To use:
copy sudomesh-bin/* into ~sudomesh/bin/
copy sudomirror-bin/* into ~sudomirror/bin/
As sudomesh, check out the OpenWRT firmware (before the firewall is up!)
run firewall.sh as root.
As sudomirror, mkdir -p ~/public_html/mirror/svn/
As sudomirror, start ~/bin/build-proxy.py and ~/bin/cloneserver.py
As sudomesh, cd to the openwrt-firmware dir and run ./prepare
---
OLD MANUAL CLONE INSTRUCTIONS:
To clone a Git repository into the mirror (we're assuming you're starting
by cloning https://github.com/sudomesh/openwrt-firmware.git and that your umask
is 022)
As the mirror user:
mkdir -p ~/public_html/mirror/https/github.com/sudomesh/openwrt-firmware.git
cd ~/public_html/mirror/https/github.com/sudomesh/openwrt-firmware.git
git --bare init
git --bare fetch https://github.com/sudomesh/openwrt-firmware.git master:master
git update-server-info
)
To clone a Subversion repo into the mirror, as the mirror user:
cd ~/public_html/mirror/svn/ (Create it if needed)
mkdir -p svn.openwrt.org/openwrt/branches/attitude_adjustment
svnadmin create svn.openwrt.org/openwrt/branches/attitude_adjustment
echo '#!/bin/sh' >svn.openwrt.org/openwrt/branches/attitude_adjustment/hooks/pre-revprop-change
chmod 755 svn.openwrt.org/openwrt/branches/attitude_adjustment/hooks/pre-revprop-change
svnsync init file://$PWD/svn.openwrt.org/openwrt/branches/attitude_adjustment svn://svn.openwrt.org/openwrt/branches/attitude_adjustment
svnsync sync file://$PWD/svn.openwrt.org/openwrt/branches/attitude_adjustment
CRITICAL NOTE: These assume that git and svnsync do not ever execute code
downloaded from the remote.  I do not know if this is true.
289

edits