From 82cc17abb74943fbaa79015f0b5789f5d1108949 Mon Sep 17 00:00:00 2001 From: Davide Pesavento Date: Mon, 17 Feb 2025 18:30:05 -0500 Subject: [PATCH] docs: add badges to README, update various URLs And remove reference to inaccessible video Change-Id: I3ea826ac393847226d760002d700ae1ee648ff71 --- AUTHORS.rst | 10 +++++----- README.md | 31 +++++++++++++++++-------------- docs/hackathon.rst | 4 ++-- docs/index.rst | 15 +++++---------- docs/install.rst | 11 ++++++----- docs/introduction.rst | 31 ++++++++++++------------------- docs/videos.rst | 16 ++++++++++------ minindn/util.py | 5 ++--- 8 files changed, 59 insertions(+), 64 deletions(-) diff --git a/AUTHORS.rst b/AUTHORS.rst index 58b7099..0b1e910 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -1,15 +1,15 @@ Mini-NDN Authors -================= +================ The following lists maintainers, primary developers, and all much-appreciated contributors to Mini-NDN in alphabetic order. The specific contributions of individual authors can be obtained from the git history of the [official Mini-NDN repository](https://github.com/named-data/mini-ndn). -If you would like to become a contributor to the official repository, please follow the recommendations in https://github.com/named-data/.github/blob/master/CONTRIBUTING.md. +If you would like to become a contributor to the official repository, please follow the recommendations in . * Alexander Afanasyev * Italo Valcy S Brito * Muktadir R. Chowdhury * Damian Coomes -* ***(Maintainer)*** Saurab Dulal +* ***(Former Maintainer)*** Saurab Dulal * Laqin Fan * ***(Former Maintainer)*** Ashlesh Gawande * Nicholas Gordon @@ -27,14 +27,14 @@ If you would like to become a contributor to the official repository, please fol Technical Advisors -------------------- +------------------ * Lan Wang * Beichuan Zhang The Mini-CCNx team -------------------- +------------------ * Carlos Cabral * Caio de Moraes Elias diff --git a/README.md b/README.md index 187f02d..9508779 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,35 @@ -Mini-NDN -======== +# Mini-NDN -If you are new to the NDN community of software generally, read the -[Contributor's Guide](https://github.com/named-data/.github/blob/master/CONTRIBUTING.md). +![Latest version](https://img.shields.io/github/v/tag/named-data/mini-ndn?label=Latest%20version) +[![Docker](https://github.com/named-data/mini-ndn/actions/workflows/docker.yml/badge.svg)](https://github.com/named-data/mini-ndn/actions/workflows/docker.yml) ### What is Mini-NDN? Mini-NDN is a lightweight networking emulation tool that enables testing, experimentation, and research on the NDN platform based on [Mininet](https://github.com/mininet/mininet). Mini-NDN uses the NDN libraries, NFD, NLSR, and tools released by the -[NDN project](http://named-data.net/codebase/platform/) to emulate an NDN network on a single system. +[NDN project](https://named-data.net/codebase/platform/) to emulate an NDN network on a single system. -Mini-NDN is open and free software licensed under the GPL 3.0 license. Mini-NDN is free to all -users and developers. For more information about licensing details and limitations, -please refer to [COPYING.md](COPYING.md). +Mini-NDN is free and open source software distributed under the GNU General Public License version 3. +For more information about licensing details and limitations, please refer to [`COPYING.md`](COPYING.md). The first release of Mini-NDN is developed by members of the NSF-sponsored NDN project team. -Mini-NDN is open to contribution from the public. -For more details, please refer to [AUTHORS.rst](AUTHORS.rst). +For more details, please refer to [`AUTHORS.rst`](AUTHORS.rst). Bug reports and feedback are highly appreciated and can be made through our -[Redmine site](http://redmine.named-data.net/projects/mini-ndn) and the -[mini-ndn mailing list](http://www.lists.cs.ucla.edu/mailman/listinfo/mini-ndn). +[Redmine site](https://redmine.named-data.net/projects/mini-ndn) and the +[mini-ndn mailing list](https://www.lists.cs.ucla.edu/mailman/listinfo/mini-ndn). + +Mini-NDN is open to contribution from the public. +If you are new to the NDN software community and intend to contribute to the codebase, please read our +[Contributor's Guide](https://github.com/named-data/.github/blob/main/CONTRIBUTING.md). ### Documentation -Please refer to http://minindn.memphis.edu/ for installation, usage, and other documentation. +Please refer to for installation, usage, and other documentation. The documentation can also be built locally using: - ./docs/build.sh +```shell +./docs/build.sh +``` and is available under `docs/_build/html`. diff --git a/docs/hackathon.rst b/docs/hackathon.rst index 625e3d6..9f88824 100644 --- a/docs/hackathon.rst +++ b/docs/hackathon.rst @@ -1,10 +1,10 @@ Past NDN Hackathon projects =========================== -- 1st NDN Hackathon: `NFD integration test `_. +- 1st NDN Hackathon: `NFD integration tests `_. - 2st NDN Hackathon: `Mini-NDN metrics `_. - 3rd NDN Hackathon: `Mini-NDN cluster `_. - 4th NDN Hackathon: `Mini-NDN wifi `_. - 7th NDN Hackathon: `Mini-NDN documentation `_. - 11th NDN Hackathon: `Mini-NDN improvements `_. -- 12th NDN Hackathon: `Mini-NDN improvements and Refactoring `_. \ No newline at end of file +- 12th NDN Hackathon: `Mini-NDN improvements and refactoring `_. diff --git a/docs/index.rst b/docs/index.rst index 18ae23e..7175a28 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,8 +1,3 @@ -.. Mini-NDN documentation master file, created by - sphinx-quickstart on Mon Sep 23 11:15:54 2019. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - Mini-NDN: A Mininet-based NDN emulator ====================================== @@ -23,9 +18,9 @@ Mini-NDN: A Mininet-based NDN emulator Helpful Links ------------- -* `NDN Website `_ -* `NDN Contributor's Guide `_ -* `Mininet Documentation `_ -* `Mini-NDN redmine `_ -* `Mailing list `_ +* `NDN Website `__ +* `NDN Contributor's Guide `__ +* `Mininet Documentation `__ +* `Mini-NDN redmine `__ +* `Mailing list `__ * :doc:`Mini-NDN Team ` diff --git a/docs/install.rst b/docs/install.rst index 90bcc58..3f66750 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -17,8 +17,8 @@ You must have sudo privileges to install and run Mini-NDN. Using Docker ------------ -You can use the nightly build from GitHub package registry -:: +You can use the nightly build from GitHub package registry:: + docker run -m 4g --cpus=4 -it --privileged \ -v /lib/modules:/lib/modules \ ghcr.io/named-data/mini-ndn:master bash @@ -42,9 +42,10 @@ The provided Dockerfile can be used to build an image from scratch. To build wit Additional recommendations -------------------------- + - It is recommended to set reasonable constraints on memory (`-m`) and CPU cores (`--cpus`), especially on less powerful or non-dedicated systems. -- `--privileged` is mandatory for underlying `Mininet `_ to utilize the virtual switch +- `--privileged` is mandatory for underlying `Mininet `__ to utilize the virtual switch - The root directory on `run` is `/mini-ndn`, which contains the installation and examples. - The GUI may not work for now due to docker and xterm setup issues and is independent from Mini-NDN. If you intend to run the GUI, pass `-e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix` to the `docker run` command. @@ -67,7 +68,7 @@ Mini-NDN has the following dependencies: - `NDN Essential Tools (ndn-tools) `_ - `NDN Traffic Generator `_ - `infoedit `_ -- `Mininet `_ +- `Mininet `_ - `Mininet-WiFi `_ (optional) To install Mini-NDN and its dependencies, clone this repository and run: @@ -247,4 +248,4 @@ Using gpsd (Experimental) The gpsd application included currently is based on in-progress work and is not treated as part of the main dependencies. To use it, install the `gpsd` and `nc` (netcat) from your package manager, if not already present, -to enable the functionality. \ No newline at end of file +to enable the functionality. diff --git a/docs/introduction.rst b/docs/introduction.rst index fe19ad8..ae5a63b 100644 --- a/docs/introduction.rst +++ b/docs/introduction.rst @@ -1,14 +1,14 @@ Introduction -================= - -If you are new to the NDN community of software generally, read the -`Contributor's Guide `_. +============ What is Mini-NDN? ----------------- Mini-NDN is a lightweight networking emulation tool that enables testing, experimentation, and -research on the NDN platform. It was initially based on `Mini-CCNx `_ which was a fork of `Mininet `_. Mini-NDN uses the NDN libraries, NFD, NLSR, and tools released by the `NDN project `_ to emulate an NDN network on a single system. +research on the NDN platform. It was initially based on `Mini-CCNx `__ +which was a fork of `Mininet `__. Mini-NDN uses the NDN libraries, +NFD, NLSR, and tools released by the `NDN project `__ +to emulate an NDN network on a single system. The first release of Mini-NDN is developed by members of the NSF-sponsored NDN project team. Mini-NDN is open to contribution from the public. @@ -18,23 +18,16 @@ Mini-NDN is open to contribution from the public. License _______ -Mini-NDN is open and free software licensed under the GPL 3.0 license. Mini-NDN is free to all -users and developers. For more information about licensing details and limitations, -please refer to COPYING.md. +Mini-NDN is free and open source software distributed under the GNU General Public License +version 3. For more information about licensing details and limitations, please refer to +`COPYING.md `__. Feedback/Mailing List _____________________ Bug reports and feedback are highly appreciated and can be made through our -`Redmine site `_ and the -`mini-ndn mailing list `_. - -Video -_____ - -.. raw:: html +`Redmine site `__ and the +`mini-ndn mailing list `__. -
-

Mini-NDN (content maybe outdated)

- -
\ No newline at end of file +If you are new to the NDN software community and intend to contribute to the codebase, please read our +`Contributor's Guide `__. diff --git a/docs/videos.rst b/docs/videos.rst index db97952..0783f21 100644 --- a/docs/videos.rst +++ b/docs/videos.rst @@ -3,16 +3,20 @@ Video Tutorials May be outdated since version 0.5.0. +Mini-NDN Demo at ACM ICN 2017 +----------------------------- + .. raw:: html -
-

Mini-NDN Demo at ACM, 2017

- +
+
+Mini-NDN Overview +----------------- + .. raw:: html -
-

Mini-NDN Overview

-
diff --git a/minindn/util.py b/minindn/util.py index d44f20c..0b90a6d 100644 --- a/minindn/util.py +++ b/minindn/util.py @@ -1,6 +1,6 @@ # -*- Mode:python; c-file-style:"gnu"; indent-tabs-mode:nil -*- */ # -# Copyright (C) 2015-2020, The University of Memphis, +# Copyright (C) 2015-2025, The University of Memphis, # Arizona Board of Regents, # Regents of the University of California. # @@ -43,8 +43,7 @@ def getSafeName(namePrefix): :param namePrefix: name of the prefix """ # remove redundant "/"es, multiple "/"es are an invalid representation for empty name component - # https://named-data.net/doc/NDN-packet-spec/current/changelog.html#version-0-3 - namePrefix= "/" + ("/".join(filter(None, namePrefix.split("/")))) + namePrefix = "/" + "/".join(filter(None, namePrefix.split("/"))) return quote(namePrefix, safe='/') def ssh(login, cmd):