Skip to content
This repository has been archived by the owner on May 30, 2022. It is now read-only.

lps-rocks/rom-o-matic

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iPXE Prebuilt binary web interface Build Status

Demo

You can access a live version here: rom-o-matic.dev. The demo server is rebuilt nightly and will be hosted indefinitely. This project is attempting to revive previous domains, rom-o-matic.eu and rom-o-matic.net as well.

Why

A web interface for building iPXE binaries. Many users would prefer to be able to download prebuilt binary versions of iPXE, rather than building it from source.

This interface is built on previous work here: https://github.com/xbgmsharp/ipxe-buildweb

What

A web-based user interface that provide a way for the user to select any relevant iPXE build options, specify any embedded script, etc, and then construct and download the appropriate file.

How

The user interface, is using HTML, CSS as well as Javascript (jQuery) and a suitable server-side language (Perl). All GUI options (git version/nics list/compile options) are generated from the iPXE source code dynamically. The build.fcgi script written in Perl by Michael Brown.

Using GHCR image

https://github.com/lps-rocks/rom-o-matic/pkgs/container/rom-o-matic

  • Supported tags:

    master - Latest (Dockerfile)

  • Supported architectures: x86-64

  • Run rom-o-matic

After a successful Docker installation you just need to execute the following command in the shell:

docker run  -d \
	--publish 8080:80 \
	--name rom-o-matic \
    ghcr.io/lps-rocks/rom-o-matic:master	

Test using Docker

The Docker deb package are valid for Ubuntu and Debian.

$ wget http://get.docker.io/ -O - | sh
  • Build the images

The following command build the build directly from the github repository.

The build process might take some time a while as it download the origin Ubuntu LTS 14.04 docker image.

$ docker build --rm=true --no-cache=true -t lpsrocks/rom-o-matic github.com/lps-rocks/rom-o-matic.git

Alternatively, you can build the image localy after cloning the repository.

$ docker build --rm=true --no-cache=true -t lpsrocks/rom-o-matic .
  • Run the container

Run as a detach container

$ docker run -d -p 8080:80 -t lpsrocks/rom-o-matic

Or run the container with an attach shell

$ docker run -i --rm -p 22:22 -p 8080:80 -t lpsrocks/rom-o-matic /bin/bash
  • Check the IP
$ docker ps -a
$ docker inspect CONTAINER_ID | grep IPA

Or both command in one

$ docker ps -a | grep ipxe-buildweb | awk '{print $1}' | xargs docker inspect | grep IPAddress

Or all in one with the ssh connection

$ ssh $(docker ps -a | grep ipxe-buildweb | awk '{print $1}' | xargs docker inspect | grep IPAddress | awk '{print $2}' | tr -d '"' | tr -d ',' )
  • Login in the container via SSH

User is root and password is admin.

$ ssh root@172.17.0.x
  • Review logs
$ docker logs CONTAINER_ID
  • Enjoy!

Contributing

  1. Fork it
  2. Create a branch (git checkout -b my_markup)
  3. Commit your changes (git commit -am "Added Snarkdown")
  4. Push to the branch (git push origin my_markup)
  5. Create an Issue with a link to your branch
  6. Or Send me a Pull Request

License

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.

About

Web interface for building iPXE binaries

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages

  • Perl 37.8%
  • JavaScript 36.4%
  • HTML 17.3%
  • CSS 4.8%
  • Dockerfile 2.4%
  • Shell 1.3%