Skip to content

v1.3.0

Latest

Choose a tag to compare

@aacoutinho aacoutinho released this 22 Oct 02:19
· 10 commits to main since this release
23e0e4e

Fogbed v1.3.0 - Release Notes

πŸŽ‰ What's New

✨ Support for Ubuntu 22.04 and 24.04

Version 1.3.0 now offers official support for Ubuntu 22.04 and Ubuntu 24.04, while maintaining compatibility with Ubuntu 20.04. This update was necessary due to changes in Python package management in newer Ubuntu versions, which impacted Containernet installation.

πŸš€ Simplified Installation with Automated Script

We've introduced the new install-fogbed.sh script that completely automates the installation process. You can now install Fogbed and all its dependencies with a single command:

wget https://raw.githubusercontent.com/larsid/fogbed/main/install-fogbed.sh && chmod +x install-fogbed.sh && sudo ./install-fogbed.sh

The script automatically manages:

  • Installation of system dependencies (Git, Ansible, Python, network tools)
  • Creation of Python virtual environment at /opt/fogbed/venv
  • Containernet installation via Ansible
  • Configuration of system commands (fogbed and mn)
  • Optional systemd service configuration for worker nodes

πŸ“š Completely Revamped Documentation

The README.md and online documentation have been completely rewritten to provide:

  • Clearer and more detailed installation instructions
  • Documentation of the 6 steps performed by the installation script
  • Updated usage examples
  • Links to related projects (Mininet and Containernet)

πŸ”§ Simplified fogbed run Command

Running experiments is now more intuitive. Instead of:

sudo python3 tests/local.py

Simply use:

fogbed run tests/local.py

πŸ”„ Technical Changes

Refactoring for Virtual Environments

To ensure compatibility with Ubuntu 22.04 and 24.04, Fogbed now uses Python virtual environments (venv). This isolates dependencies and prevents conflicts with system packages.

New Helper Functions

Helper functions have been added to fogbed/helpers.py:

  • get_os_version(): Automatically detects the Ubuntu version
  • run_pip_install(): Manages package installation according to OS version
  • run_python_file(): Executes Python scripts with the correct interpreter

Dependency Updates

  • clusternet: Updated from >= 0.9.2 to >= 0.9.3

πŸ“ Modified Files

File Changes
pyproject.toml Version updated to 1.3.0, expanded description, new clusternet dependency
README.md Rewritten with new installation instructions
install-fogbed.sh New file - Automated installation script (200 lines)
fogbed/helpers.py Added helper functions for OS detection
fogbed/scripts.py Refactored to use dynamic paths and virtual environments
docs/index.md Updated with instructions for Ubuntu 22.04+
tests/*.py Comments updated with new execution command

πŸ”— Compatibility

  • βœ… Backward compatible: Ubuntu 20.04 remains fully supported
  • βœ… New platforms: Ubuntu 22.04 and 24.04 now officially supported
  • βœ… No breaking changes: Existing code continues to work normally

πŸ‘₯ Contributors

This version was developed by:

  • EsauM10 - Implementation of Ubuntu 22.04/24.04 support and refactoring
  • Antonio Coutinho - Automated installation script and documentation improvements

πŸ“¦ Installation

Automatic Installation (Recommended)

wget https://raw.githubusercontent.com/larsid/fogbed/main/install-fogbed.sh && chmod +x install-fogbed.sh && sudo ./install-fogbed.sh

Manual Installation (Ubuntu 22.04+)

# Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate

# Install Fogbed
pip install fogbed

# Install Containernet
fogbed install

Installation Script Options

Parameter Description
(none) Executes complete installation
-remove Removes Fogbed installation
-systemd-disabled Installs without configuring systemd service
-h, --help Displays help

πŸ› Bug Fixes

  • Fixed example file paths in documentation
  • Adjusted Containernet download to user's home directory
  • Fixed installation issues in environments with newer setuptools

πŸ“Š Statistics

  • Total commits: 36
  • Files modified: 13
  • Lines added: 326
  • Lines removed: 41
  • Development period: 05/03/2025 to 10/21/2025

πŸ”— Useful Links


Note: This is a recommended update for all users. If you are using Ubuntu 22.04 or 24.04, this version is essential for Fogbed to function correctly.