Project

General

Profile

QuickStart » History » Version 35

Version 34 (Alexey Z., 03/06/2013 05:56 AM) → Version 35/40 (Alexey Z., 03/06/2013 06:00 AM)

h1. Quickstart guide

h2. Creating a ZRouter build environment.

This should probably be done within a Jail.

At First, this Requires you have [[hg]]/mercurial installed:

* From FreeBSD ports:
<pre>
# cd /usr/ports/devel/mercurial
# make install clean
</pre>
* *OR* From FreeBSD packages:
<pre>
# pkg_add -r mercurial (or # pkg install mercurial)
</pre>

# Create a path set aside for ZRouter build.
<pre># mkdir -p ZRouter/</pre>
# Enter directory:
<pre># cd ZRouter</pre>
# Checkout/clone ZRouter Project
<pre># hg clone http://zrouter.org/hg/zrouter/</pre>
# Checkout/clone Current compatible FreeBSD source:
<pre># hg clone http://zrouter.org/hg/FreeBSD/head FreeBSD</pre>
# Begin ZRouter Build Menu
<pre># ./menu.sh</pre>

h2. Entering ./menu.sh

!mainmenu.jpg!

# Select your target device (example D-Link DIR-632):
!Target.jpg!
# Select Base Profile. That's two choise:
- Small - size firmware > 4 MB (if your ROM more than 4 MB)
- Extra small - size firmware <= 4MB (if your ROM less than 4 MB)


!kernel.jpg!


# At "Profiles" select package that included firmware:
- DEBUG_ -
- ath -
- dhclient -
- dhcp -
- dig_spcdns -
- hostap -
- ipfw - stateful "firewall written for FreeBSD":http://www.freebsd.org/doc/handbook/firewalls-ipfw.html.
- lagg -
- lua_web_ui -
- mono -
- mpd -
- mroute -
- net_help -
- nfs_client - client for supports the "Network File System":http://en.wikipedia.org/wiki/Network_File_System ("NFS":http://www.freebsd.org/doc/en/books/handbook/network-nfs.html)

- ng_igmp_fwd -
- ntpdate - for clock synchronization over "Network Time Protocol (NTP)":http://en.wikipedia.org/wiki/Network_Time_Protocol ("NTP":http://www.freebsd.org/doc/en/books/handbook/network-ntp.html). (NTP)":http://en.wikipedia.org/wiki/Network_Time_Protocol.
- openvpn - create a "Virtual Private Network (VPN)":http://en.wikipedia.org/wiki/VPN. Include "OpenVPN":http://openvpn.net, crypto libraries.
- ppp -
- racoon -
- racoon2 -
- shttpd -
- ssh - enable "SSH service":http://en.wikipedia.org/wiki/Secure_Shell. Include ssh, sshd, SSH PAM service file and /etc/ssh configs.
- watchdog - if software freeze, then "watchdog":http://en.wikipedia.org/wiki/Watchdog_timer H/W reset system. Include watchdogd and rc.d script.
- zhttpd -
!package.jpg!
# Last that must to do - select paths of source and build object:
!path.jpg!
- Path of FreeBSD/head
!Path_head.jpg!
- Path of objects (temporary direcroty where will be compilate your firmware)
!path_obj.jpg!
Then go back to main menu:
!path_back.jpg!
# You can save your selection to "Build Profile" for future use (file will be created at "./Zrouter/zrouter/build_profiles/" ):
!save_menu.jpg!
!save.jpg!
# You can load your Build Profile if you save it early:
!load_menu.jpg!
!load.jpg!
# Now select to "Build" and you see all your choices:
!Compilate.jpg!
Answer "yes" and firmware will begining.

h2. "Flash your firmware":http://zrouter.org/projects/zrouter/wiki/Howto_flash