Shell Receive (shrx) ==================== This program, known as shrx, is a first-stage boot image creator for other payload projects. It creates virtual machines which mount and execute a payload script, mounted via QEMU FAT filesystem. shrx is used to build the initial boot media, which is a dependency for many other projects at Stack41. It puts its OS images in the os/ directory when it is complete. It is the responsibility of the payload project to supply the setup script, and run the first post-install boot. shrx is only a first-stage image builder. Building an OS image ==================== shrx can build many types of operating systems. Currently, the following OS targets are available: alpine-3.8 pfsense-2.4.4 Using an image ============== Once an os/ image has been built, it can be used by other programs. In fact, if other programs wish to become payloads of shrx, they should look to this directory for this build asset. And, if the asset does not exist, they may call upon the shrx Makefile to build it on-demand. Payloads can do anything, but typically they need to, at minimum: - Configure network, DNS, logging destination - Add application service to /etc/init.d and configure to start at boot - Handle producing final boot media (for example, one output format could be .qcow2 and a .conf file for Proxmox) Maintainer ========== Davis Remmel is the active maintainer of this project. License ======= The code written by Stack41, comprising the scripts necessary to build boot images, is licensed under the GNU GPLv3 license. Copyright (C) 2019 Stack41, LLC. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Other Licenses ============== Other software is bundled in this repository, unmodified. Those pieces of software are Alpine Linux, and pfSense. Alpine Linux is comprised of various pieces of software with their own licenses. The versions redistributed here are unmodified. pfSense is released under an Apache 2.0 licesnse. Stack41 is unaffiliated with Netgate or pfSense, other than redistributing unmodified copies of their software.