Infix is an embedded Linux Network Operating System (NOS) based on Buildroot, Finit, ifupdown-ng, and Clixon. Providing an easy-to-maintain and easy-to-port Open Source base for networked equipment.
See the GitHub Releases page for out pre-built images. The Latest Build has the bleeding edge images, if possible we recommend using a versioned release.
Login with user 'root', no password by default on plain builds. See the online
help
command for an introduction to the system.
By default, Infix builds with support for the following boards (you may enable additional boards in the config, of course):
- Marvell CN9130 CRB
- Marvell EspressoBIN
- Microchip SparX-5i PCB135 (eMMC)
See the aarch64 specific documentation for more information.
Primarily intended to be run under QEMU for development & test as well as evaluation, demo and training purposes, e.g. using GNS3 or Qeneth.
A virtualized instance can easily be launched from a Linux system, with
Qemu installed, by issuing make run
.
Some settings, e.g. networking, can be configured via make menuconfig
under External options -> QEMU virtualization
.
Download the latest build of amd64, unpack in a dedicated directory
and use "Import Appliance" to install the .gns3a
file into GNS3.
Infix will show up in the "Router" category, it has 10 interfaces
available by default for use as switch ports or routing.
Buildroot is almost stand-alone, but need a few locally installed tools to bootstrap itself. For details, see the excellent manual. Briefly, to build an Infix image; select the target and then make:
make amd64_defconfig
make
Online help is available:
make help
To see available defconfigs for supported targets, use:
make list-defconfigs
Note: build dependencies (Debian/Ubuntu): sudo apt install make libssl-dev
Infix is entirely built on Open Source components (packages). Most of them, as well as the build system with its helper scripts and tools, is from Buiildroot, which is distributed under the terms of the GNU General Public License (GPL). See the file COPYING for details.
Some files in Buildroot contain a different license statement. Those files are licensed under the license contained in the file itself.
Buildroot and Infix also bundle patch files, which are applied to the sources of the various packages. Those patches are not covered by the license of Buildroot or Infix. Instead, they are covered by the license of the software to which the patches are applied. When said software is available under multiple licenses, the patches are only provided under the publicly accessible licenses.
Infix releases include the license information covering all Open Source
packages. This is extracted automatically at build time using the tool
make legal-info
. Any proprietary software built on top of Infix, or
Buildroot, would need separate auditing to ensure it does not link with
any GPL1 licensed library.
Footnotes
-
Infix image builds use GNU libc (GLIBC) which is covered by the LGPL. The LGPL does allow proprietary software, as long as said software is linking dynamically, not statically, to GLIBC. ↩