1 Building your own FRRouting Snap
2 ========================================
3 (Tested on Ubuntu 18.04)
7 sudo apt-get install snapcraft
9 2. Checkout FRRouting under a **unpriviledged** user account
11 git clone https://github.com/frrouting/frr.git
14 3. (Optional) Add extra version information to
15 `snapcraft/extra_version_info.txt`. Information in this file will
16 be displayed with the frr.version command (simple `cat` after
17 the display of the `zebra --version` output)
19 4. Run Bootstrap and make distribution tar.gz
22 ./configure --with-pkg-extra-version=-MySnapVersion
25 Note: configure parameters are not important for the Snap building,
26 except the `with-pkg-extra-version` if you want to give the Snap
27 a specific name to mark your own unoffical build
29 This will build `frr-something.tar.gz` - the distribution tar and
30 the snapcraft/snapcraft.yaml with the matching version number
37 You should now end up with `frr_something.snap`
41 (This can be done on a different system)
45 sudo apt-get install snapd
47 2. Install self-built frr snap. (`--force-dangerous` is required to
48 install a unsigned self-built snap)
50 snap install --force-dangerous ./frr*.snap
52 Connect the priviledged `network-control` plug to the snap:
54 snap connect frr:network-control core:network-control
56 See README.usage.md for more details on setting up and using the snap
60 The Snap will be auto-started and running.
66 At this time, all FRRouting daemons are auto-started.
68 A daemon can be stopped/started with (ie ospf6d)
70 systemctl stop snap.frr.ospf6d.service
71 systemctl start snap.frr.ospf6d.service
73 or disabled/enabled with
75 systemctl disable snap.frr.ospf6d.service
76 systemctl enable snap.frr.ospf6d.service
78 ### FRRouting Commands
79 All the commands are prefixed with frr.
82 frr.version -> Just gives version output (zebra --version)
83 frr.readme -> Returns simple README with hints on using FRR
85 frr.bgpd-debug -> Directly start each daemon (without service)
104 vtysh can be accessed as frr.vtysh (Make sure you have /snap/bin in your
105 path). If access as `vtysh` instead of `frr.vtysh` is needed, you can enable it
106 via a snap alias as follows:
108 sudo snap alias frr vtysh
110 This will add the vtysh command to your /snap/bin for direct access. The output of
114 should list vtysh command alias as enabled:
117 frr.vtysh vtysh enabled