From ProgClub
Jump to: navigation, search

Hostsgen is the ProgClub /etc/hosts generation software. That's the software that generates /etc/hosts content for replaced hosts. For other projects see projects.


We use semantic versioning. Latest production version: unreleased. Latest development version: 0.1.


Why this software?

We want old hostnames to point to new host IP addresses when they are replaced. We run this software to generate the /etc/hosts content for the settings for replaced hosts. Basically the old hostnames will point to the IP address of their replacement host.



Programmers who have contributed to this project. Newest on top.

All contributors have agreed to the terms of the Contributor License Agreement.


Copyright © 2020, Contributors.


Licensed under the MIT license.


Libraries, tools, services, or media from third parties used under license:



There are no downloads for this project, see source code.

Source code

The repository can be browsed online:

The latest stable released version of the code will be available from:

Or if you want the latest version for development purposes:



Functional specification

The functional specification describes what the project does.

See: notes.txt.

Technical specification

The technical specification describes how the project works.

The software is a JavaScript program which runs via Node.js. It processes a JSON file as input and produces /etc/hosts compatible output on stdout. For example input see good.json.


See versioning for information on our semantic version numbers.

Notes for implementers

If you are interested in incorporating this software into your project, here's what you need to know:

$ svn checkout hostsgen-0.1

Then run with:

$ bin/ /path/to/input.json

Notes for developers

If you're looking to set up a development environment for this project here's what you need to know.

Get the latest code from the version branch:

$ svn checkout hostsgen-0.1

You can then run the unit tests like this:

$ cd hostsgen-0.1 && bin/test/

Note that you may need to install some dependencies, such as:

# apt install nodejs subversion

Send your patch to along with a statement that you are willing to be listed in the contributors section of the documentation and willing to license your contribution under the license and agree to the terms.

Notes for administrators

To release a version of this project use svnman.

First, run maintenance and commit any changes:

$ svnman commit

Then run the release:

$ bin/dev/

You will be prompted to update the project documentation.

Generated documentation

N/A at this time.