Malivveb





What is Malivveb?

Malivveb is a build server API that comes with a CLI to upload projects and automatically compile them. It is password protected so that it can keep your builds and server private; even on an open network.



How Do I Install The Server?

Download the server binary and PGP verify it. After running, it will prompt you to create a password. It will then run in your current terminal.

If you'd like to run the server as a systemd service, make sure you set the working directory of the service to the directory where you created the password files.

Ensure you set the password in the terminal before running it as a systemd service.

By default the server will run on port 8080. You can change this by passing a port number as a flag --port=8080. Sudo permission may be required for low ports.

Once the server is running you can go to /upload to upload a project manually. You can also go to /out/ to download the build files.

You can change the password of the server by deleting the password files in the server directory then run it in the terminal to reset the password



How do I Install and Use The Client?

Download the client binary and verifiy the PGP signature. You can then run:

sudo install malivveb /usr/local/bin

To add it into your bin. Alternativley, you can append the $HOME/.bashrc and add the path of malivveb into the $PATH.

You can then cd into a project directory and run:

malivveb

It will prompt you for information about the server. The username is the username you chose when you initilised the server. Set the URL to the server's IP address or hostname, specify https if you have SSL enabled. I strongly recommend using a service like Caddy to reverse proxy the server and handle SSL. You can then specify a port if you changed it or are using a reverse proxy. You will be propted for the password every time you upload a project.

During the configuration, the client will create a config file in $HOME/.config/malivveb/config.json. You can edit this file to change the server information. It will also download template build.sh files into $HOME/.config/malivveb/templates. You can edit these files to change the templates. If the templates fail to download you can find them here.

Once you have configured the client you can upload a project to the server simply by runnning the same command without configuiring the server.

The client will look for an archive named the same as your project dir. This can be changed by passing a project name into the commmand:

malivveb customProjectName

The archive should contain the project source files and a build.sh with build commands. Ensure you have all the correct dependencies on your server, such as gcc or golang.

If the archive is not found you can specify a name for it or generate one through the client. If generating the archive, the client will look for a build.sh file in the project directory. If it is not found it will prompt you for build commands or you can use a template. Templates can be found in $HOME/.config/malivveb/templates.

Then if the build.sh and archive were successfully made or found then the client will prompt you for the server password. Once the password is entered the client will upload the project to the server.

Once the client has uploaded the project, the server will automatically compile it by running the build.sh. A link the the log file will then be displayed in your terminal.

Once the project has finished compiling the build files will be available on the /out/ page of the server. You can download the build files from there. Automatic downloads will be added in the future. To download from the command line you can simply run:

wget https://username:password@example.com/out/project.tar.gz

All software on https://sophuwu.site is free and open source. Anyone claiming to sell my software is a scammer. Malivveb and Malivveb-Server are free to be used by anyone. You can use it for personal or commercial use. You can also modify it to your liking. You can also redistribute it.