(R)?ex Deployment & Configuration Management




Work with (R)?ex at adjust! Check out their job posting for details, or contact our fellow core developer, FErki.


(R)?ex 1.4.1 released, fixing many bugs. See the release notes for more details.


(R)?ex 1.4.0 released, containing lots of goodies. See the release notes for more details.


(R)?ex 1.3.3 released, fixing a bunch of bugs. See the release notes for more details.


adjust GmbH is sponsoring the (R)?ex project with a new build server. Thank you for your support!


(R)?ex 1.3.2 released, fixing issues related to file manipulation when run on BSDs. See the release notes for more details.


(R)?ex 1.3.1 released, fixing Rex::Commands::DB related tests.


Read the second part of "Rex in practice" series about Test-driven infrastructure.


repositor.io 1.1.0 released. repositor.io is a repository management tool for apt, yum, yast and docker. This is a bugfix release with fixes for ubuntu and centos7 installation media mirroring.


(R)?ex 1.2.0 released. See the release notes for more details.


View the slides of the talk An introduction to Rex from Andy Beverley.




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.


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


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

Optional packages (only for specific Rex functions):


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:


It can be set up with the following commands:

opkg update
opkg install openssh-sftp-server

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.


You'll need to install the following packages:


Merely needed by sync_up functionality.


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:

Fork me on GitHub
Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.รด.-   Disclaimer