(R)?ex the friendly automation framework

News

2019-12-05
Rex-1.7.1

The Rex-1.7.1 release is now available on CPAN, fixing a Windows testing issue, and updating some docs.

2019-11-05
Rex-1.7.0

The Rex-1.7.0 release is now available on CPAN.

2019-07-02
Deprecating official Rex packages

As part of our efforts to simplify maintenance around RexOps projects, we have decided to stop building Rex packages on our side. We recommend relying on OS packages maintained by the various distributions in their respective upstream repositories, or to install Rex from CPAN.

2019-06-09
Post-migration updates & clean-up

Over the course of the past weeks many clean-ups have been done, reaping the benefits provided by our new Statocles-based site:

2019-05-19
New site engine for rexify.org

After months of work on a new site backend, we reached the MVP today for our site to be switched over to a new engine: from now on, our site will be maintained using the static site generator Statocles.

Conferences

2016-06-21

Need Help?

Rex is a pure open source project, you can find community support in the following places:

Professional support is also available.

» Home » Docs » Guides » Manage OpenWrt

Manage OpenWrt

OpenWrt is a Linux distribution for embedded devices and it is primarily aimed for and used on routers. This means that every component is optimized for size to fit into the limited resource constraints of these devices. As a result some things are working a bit differently than on a full-blown desktop or server distribution. This guide tries to help you getting started with using Rex to manage OpenWrt boxes.

Overview

What's working?

Please see the official compatibility page. You may also want to check the current project weather on build.rexify.org.

Known limitations

Requirements

Generally you'll need the following packages on your OpenWrt box on top of a vanilla install:

Optional packages (only for specific Rex functions):

Details

SFTP server

By default OpenWrt doesn't provide an SFTP server. As Rex does lots of lower level operations via SFTP (is_dir(), is_file(), ...), the first package you should install on your box is either openssh-sftp-server or gesftpserver.

A massively subjective comparison of these two may help to make your decision:

openssh-sftp-server

It can be set up with the following commands:

opkg update
opkg install openssh-sftp-server
gesftpserver

It can be set up with the following commands:

opkg update
opkg install gesftpserver
mkdir /usr/libexec
ln -s /usr/bin/gesftpserver /usr/libexec/sftp-server

If you want to automate the set up of the chosen SFTP server on a fresh OpenWrt installation, just put the according steps into run calls in a Rex task. The bottom line is to don't try to use the built-in mkdir and symlink functions at this point as they are broken before you have an SFTP server in place. You can find out more about gesftpserver and a comparison of different SFTP implementations/versions on their website.

Perl

You'll need to install the following packages:

rsync

Merely needed by sync_up functionality.

shadow-*

OpenWrt doesn't provide traditional user and group management commands by default as these procedures are rarely needed in the majority of the targeted use cases. However, if you really need to do these type of stuff on your router, you're in luck, as you can easily install these packages from the official repository:

Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.ô.-   Disclaimer