netbootxyz-go-webapp
This is an implementation of the original netbooxyz-webapp in go.
Versions
Date |
Version |
Comments |
2024-11-?? |
0.1.0 |
initial release |
Configuration parameter
The application can be configured with some parameters. All parameters can be set by environment variables.
See netbootxyz-go-webapp -h
for details:
NAME:
netbootxyz-go-webapp - A simple web server to manage files for netboot.xyz. See https://github.com/netbootxyz/webapp/ for the original source.
USAGE:
netbootxyz-go-webapp [global options] command [command options]
COMMANDS:
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--ListenAddress value, -l value Address the webinterface ist listening on. See https://pkg.go.dev/net#Dial for valid address strings (default: ":3000") [$NBXYZ_LISTEN_ADDRESS]
--AssetPath value, -a value Path where the config files are stored, defaults to ${BasePath}/assets (default: /home/joniw/Dokumente/Development/netbootxyz-go-webapp/assets) [$NBXYZ_ASSET_PATH]
--BasePath value, -b value Base path for menu files and assets, defaults to current working directory (default: /home/joniw/Dokumente/Development/netbootxyz-go-webapp) [$NBXYZ_BASE_PATH]
--ConfigPath value, -c value Path where the config files are stored, defaults to ${BasePath}/config (default: /home/joniw/Dokumente/Development/netbootxyz-go-webapp/config) [$NBXYZ_CONFIG_PATH]
--BaseURL value, -u value Base url where to server http assets (default: /) [$NBXYZ_BASE_URL]
--DownloadMenu, -d Download netbootxyz menu if no files exist. (default: false) [$NBXYZ_DOWNLOAD_MENU]
--DownloadMenuVersion value, -v value Initial Netbootxyz menu version to download, if no files exist. [$NBXYZ_DOWNLOAD_MENU_VERSION]
--help, -h show help
Openwrt packages
The openwrt
folder contains two packages. When the application is tagged, the packages are uploaded to the package registry on the forge.
To use the package as a feed run the following commands:
# Download the public key
version={Set correct version number}
url="https://forge.joniw.de/api/packages/joniw/generic/netbootxyz-go-webapp/${version}"
wget ${url}/key-build.pub
# Copy the key to the keys folder
fingerprint=$(usign -F -p key-build.pub)
mv key-build.pub /etc/opkg/keys/${fingerprint}
# add feed
echo "src/gz netbootxyz-go-webapp ${url}" >> /etc/opkg/customfeeds.conf
# update package feed
opkg update
# install packages
opkg install netbootxyz-go-webapp luci-app-netbootxyz-go-webapp
netbootxyz-go-webapp
This package builds the application for openwrt. The following settings are available:
Config name |
Purpose |
Default value |
listen_address |
Address the web port is listening |
127.0.0.1:3000 |
base_url |
Base url, the webinterface is using |
/netbootxyz/ |
base_path |
Path to the netboot files |
/opt/netbootxyz |
asset_path |
Override for the assets |
/opt/netbootxyz/assets |
config_path |
Override for the menus and pxe file |
/opt/netbootxyz/config |
luci-app-netbootxyz-go-webapp
This is a management appliction for the package. It supports managing the config of netbootxyz-go-webapp
.
If nginx
is installed the configuration for proxy is written automatically.
License
Original netbooxyz-webapp is licensed under Apache License 2.0
My changes are licensed under MIT