Thanks to visit codestin.com
Credit goes to github.com

Skip to content

evilnet/testnet

Repository files navigation

Afternet Testnet

A Docker-based test environment for running Nefarious IRCd and X3 Services together.

Prerequisites

  • Git
  • Docker and Docker Compose
  • SSH key configured for GitHub (for x3 submodule)

Getting Started

1. Clone the Repository

git clone --recurse-submodules [email protected]:evilnet/testnet.git
cd testnet

If you already cloned without --recurse-submodules, initialize the submodules:

git submodule update --init --recursive

2. Configuration

Configuration files are stored in data/ and mounted directly into containers:

  • data/local.conf - Nefarious IRCd configuration (mounted to container)
  • data/x3.conf - X3 services configuration (mounted to container)
  • .env - Environment variables (mostly unused; configs are hardcoded in the above files)
  • .env.local - Local overrides (not committed to repo)

3. Build and Run

# Build the containers
docker compose build

# Start the services
docker compose up -d

# View logs
docker compose logs -f

4. Connect

Once running, you can connect to the IRC server:

  • Host: localhost
  • Port: 6667 (plain) or 4497 (SSL)

Project Structure

testnet/
├── docker-compose.yml    # Docker orchestration
├── .env                  # Environment variables (mostly unused)
├── nefarious/            # Nefarious IRCd (git submodule)
├── x3/                   # X3 Services (git submodule)
├── data/                 # Configuration files (committed)
│   ├── local.conf        # Nefarious IRCd config
│   └── x3.conf           # X3 services config
└── tests/                # Integration tests

Submodules

This repository uses git submodules for the main components:

Submodule Repository Branch
nefarious https://github.com/evilnet/nefarious2 default
x3 [email protected]:evilnet/x3.git rubin-add_docker

Updating Submodules

To pull the latest changes from upstream:

git submodule update --remote --merge

Exposed Ports

Port Service
6667 IRC (plain)
9998 IRC (SSL)
4497 Services link

Troubleshooting

Submodule issues

If submodules appear empty after cloning:

git submodule update --init --recursive

Container won't start

Check the logs for errors:

docker compose logs nefarious

Permission issues

The containers run as UID/GID 1234. Ensure mounted volumes have appropriate permissions.

Development

To make changes to the submodules:

cd nefarious  # or x3
git checkout -b my-feature
# make changes
git commit -am "My changes"
git push origin my-feature

Then update the parent repo to track the new commit:

cd ..
git add nefarious  # or x3
git commit -m "Update nefarious submodule"

About

Docker compose environment for running nefarious2 and x3 for testing

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •