Merge pull request #360 from dangowrt/bmx7_use_procd
[feed/routing.git] / bird-openwrt / README.md
1 # bird-openwrt
2
3 Package for OpenWRT to bring integration with UCI and LUCI to Bird4 and Bird6 daemon.
4
5 This repository contains an UCI module adding support for an user-friendly configuration of the BIRD daemon in OpenWRT systems and a LuCI application to control this UCI configuration using the web-based OpenWRT configuration system.
6
7 **Package Names**: luci-app-bird{4|6} and bird{4|6}-uci
8
9 **Dependences**: +bird{4|6} +libuci +luci-base +uci +libuci-lua
10
11 **Last Version**: 0.3
12
13 **Terminal (UCI) Documentation**: [Link](https://github.com/eloicaso/bird-openwrt/blob/master/UCI-DOCUMENTATION.md)
14
15 **Web (LUCI) Documentation**: [Link](https://github.com/eloicaso/bird-openwrt/blob/master/LUCI-DOCUMENTATION.md)
16
17
18 ## Known issues (v0.3):
19 * There is an issue with pre-built images. It seems that the UCI-Default Scripts are not applied for some reason. If you face this situation, just copy both packages in your /tmp and and execute "opkg install PackageName.ipk --force-reinstall". It will overwrite your /etc/config/bird{4|6}, create a backup of this configuration.
20
21 * LUCI Material Design Theme shows a "Loading page" in **Logs Page** preventing it to load. Moreover, the OpenWRT Theme crashes loading the **Log Page**.
22 Please, go to `System -> Language and Style -> Design` and change it to any other avaiable Theme (*Bootstrap* or *Freifunk_Generic* are recommended).
23
24 * There is a manual procedure to designate custom Routing Table IDs created through this package's UI. Please, visit [this page](https://github.com/eloicaso/bgp-bmx6-bird-docn/blob/master/EN/manual_procedures.md) for more details.
25
26 ## How to compile:
27 Due to the existence of Routing's bird-openwrt packages, if you want to build your system using this repo's bird packages, you need to proceed as follows:
28
29
30 * Add this github as a repository in feeds.conf. Alternatively, you could use a local git clone)
31 ```
32 src-git birdwrt https://github.com/eloicaso/bird-openwrt.git
33
34 ```
35 OR
36 ```
37 src-link birdwrt /path/to/your/git/clone/bird-openwrt
38 ```
39
40 * Disable OpenWRT-Routing repository to avoid getting the outdated package
41 ```
42 # src-git routing https://github.com/openwrt-routing/packages.git
43 ```
44
45 * Update and install all packages in feeds
46 ```
47 ./scripts/feeds update -a; ./scripts/feeds install -a
48 ```
49
50 * Enable OpenWRT-Routing repository to fulfill bird{4/6} dependencies
51 ```
52 src-git routing https://github.com/openwrt-routing/packages.git
53 ./scripts/feeds update routing; ./scripts/feeds install bird4 bird6
54 ```
55
56 * Compile (Option 1) the whole OpenWRT image with the package included
57 ```
58 make menuconfig -> Network -> Routing and Redirection -> Select bird*-uci
59 -> LuCI -> 3. Applications -> Select luci-app-bird*
60 make V=99
61 ```
62
63 * Compile (Option 2) the packet ( ! this method requires to compile its dependeces before using Option 1)
64 ```
65 make package/feeds/birdwrt/bird{4/6}-openwrt/compile V=99
66 ```
67
68 * Find your package in
69 ```
70 [OpenWRT_folder]/bin/packages/{Architecture}/routing/bird{4/6}-uci_{Version}_{Architecture}.ipk
71 [OpenWRT_folder]/bin/packages/{Architecture}/routing/luci-app-bird{4/6}_{Version}_{Architecture}.ipk
72 ```
73
74 * Install your .ipk in your dev-environment (avoid CheckSum Missmatch issues)
75 ```
76 scp bird{4/6}-uci_{Version}_{Architecture}.ipk user@IPAddres:/tmp
77
78 On your Dev-Environment:
79 opkg install bird{4/6}-uci_{Version}_{Architecture}.ipk --force-checksum
80 ```