diff --git a/CHANGELOG.md b/CHANGELOG.md index c827390..eda5122 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,28 @@ # Changelog +## [v0.1.1] - 01/09/2023 + +### Changed +- Set logo height to 64px. (#4) + +### Fixed +- Fixed uninstall issue. (#4) + +### Added Project Enhancements +- Added DOI badge for the project. (#4) + +### Documentation +- Updated user guide to install the NuclearBoy from releases. (#4) +- Updated development guide. (#4) + +### Miscellaneous +- Other minor improvements, optimizations, and code refinements.(#4) + + +[v0.1.1]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/v0.1.1 + + ## [v0.1.0] - 01/09/2023 ### Added @@ -48,7 +70,7 @@ ### Deprecated - Deprecated the old method of environment activation and program usage. (#3) -[v0.1.0]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/0.1.0 +[v0.1.0]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/v0.1.0 @@ -73,4 +95,4 @@ ### Fixed - Set cython<3 (#2) -[v0.0.1]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/0.0.1 \ No newline at end of file +[v0.0.1]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/v0.0.1 \ No newline at end of file diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..a99f78d --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,42 @@ +cff-version: 1.2.0 +title: >- + NuclearBoy: Package Manager for Nuclear Engineering + Development +message: Nuclear Physics Simulation Toolkit +type: software +authors: + - given-names: Ahnaf Tahmid + family-names: Chowdhury + email: tahmid@nse.mist.ac.bd + affiliation: Military Institute of Science and Technology (MIST) + orcid: 'https://orcid.org/0000-0003-1070-5576' +identifiers: + - type: doi + value: 10.5281/zenodo.8307492 +repository-code: 'https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy' +abstract: >- + NuclearBoy is a versatile package manager tailored for + nuclear engineering development, streamlining the setup of + a comprehensive development environment for nuclear + physics simulations and calculations. It facilitates the + effortless installation and updating of essential packages + and libraries, such as PyNE, OpenMC, DAGMC, and Geant4, + crucial for conducting nuclear physics simulations and + analyses. The script detects the operating system, manages + dependencies, creates a Python virtual environment, and + installs the required components. With user-configurable + options and a straightforward installation process, + NuclearBoy simplifies the often complex task of setting up + a nuclear engineering development environment, making it + an invaluable tool for researchers and engineers in the + field. +keywords: + - Nuclear Engineering + - Nuclear Physics + - Package Manager + - Installation Automation + - Scientific Computing + - Simulation +license: MIT +version: 0.1.1 +date-released: '2023-09-01' diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5834019..5dbbe8e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -49,11 +49,11 @@ Contributions from the community help us grow and improve **NuclearBoy**. Follow If you're interested in contributing code, here's how to set up your development environment: -1. Fork the repository with branch `develop`. +1. Fork the [repository](https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/fork). 1. Clone your fork of the repository: `git clone https://github.com//.git` 2. Navigate to the project directory: `cd ` 3. Check out development branch: `git checkout develop` -4. Run the script: `./install-nuclear-boy.sh` +4. Run the script: `./install-nuclear-boy.sh` and install NuclearBoy 5. Install dependencies: `pip install -r packages.txt` 6. Run tests: `pytest -ra tests` diff --git a/README.md b/README.md index ad3690c..ada520c 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ -# NuclearBoy +# NuclearBoy ![Build and Test](https://img.shields.io/github/actions/workflow/status/ahnaf-tahmid-chowdhury/NuclearBoy/run_build_and_test.yml?style=flat-square&logo=githubactions&logoColor=white&label=Build%20and%20Test ) ![Release](https://img.shields.io/github/v/release/ahnaf-tahmid-chowdhury/NuclearBoy?style=flat-square&logo=github&label=Release&include_prereleases) +[![DOI](https://img.shields.io/badge/DOI-10.5281%2Fzenodo.8307492-blue?style=flat-square)](https://doi.org/10.5281/zenodo.8307492) This package manager is designed to set up a development environment for nuclear physics simulations and calculations. It automates the installation/update of various packages and libraries ([PyNE][pyne], [OpenMC][openmc], [DAGMC][dagmc], and [Geant4][geant4]) required for running nuclear physics simulations and analyses. @@ -13,22 +14,31 @@ This package manager is designed to set up a development environment for nuclear ## Usage -1. Clone the repository or download the [latest release](https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/latest) directly to your local machine. +1. Download the [latest release](https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/latest) and extract it to your local machine. + **Using wget:** ```sh - git clone https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy.git \ - --depth 1 \ - --branch master + wget "https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/archive/refs/tags/0.1.1.tar.gz" -O - | tar -xz + + ``` + **Using curl:** + ```sh + curl -L "https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/archive/refs/tags/v0.1.1.tar.gz" | tar -xz + ``` + +2. Go to the NuclearBoy directory. + + ```sh + cd NuclearBoy-0.1.1 ``` -2. Make the script executable. +3. Make the `install-nuclear-boy.sh` script executable. ```sh - cd NuclearBoy chmod +x install-nuclear-boy.sh ``` -3. Run the script. +4. Run the script. ```sh ./install-nuclear-boy.sh @@ -193,7 +203,7 @@ The NuclearBoy program is provided for informational purposes only. The authors ## Contributing -Contributions to this project are welcome. If you find any issues or have improvements to suggest, feel free to open a GitHub issue or create a pull request. +Contributions to this project are welcome. If you find any issues or have improvements to suggest, feel free to open a GitHub issue or create a pull request. For more information, check out the [CONTRIBUTING.md](CONTRIBUTING.md) file. ## Contact diff --git a/install-nuclear-boy.sh b/install-nuclear-boy.sh index 1eeda1a..aad1393 100755 --- a/install-nuclear-boy.sh +++ b/install-nuclear-boy.sh @@ -95,7 +95,7 @@ detect_version_id() { version_id="1" fi - echo "Detected version id as $version" + echo "Detected version id as $version_id" } set_install_directory() { @@ -955,7 +955,7 @@ __${env_name}_uninstall(){ if [[ "\$REPLY" == "${env_name}" ]]; then echo "Uninstalling ${env_name}..." echo "Removing ${env_name} directory..." - #rm -rf ${env_dir} + rm -rf ${env_dir} remove_from_shell(){ echo "Removing ${env_name} from your shell." local config_file="\$1" @@ -1091,8 +1091,13 @@ EOF main() { detect_os detect_version_id - echo "Welcome to the NuclearBoy installer!" - echo "This package manager will install the PyNE, OpenMC, DAGMC and Geant4 on your system." + echo + echo -e "\033[1mWelcome to the NuclearBoy installer!\033[0m" + echo "This package manager sets up a development +environment for nuclear physics simulations and calculations. +It automates the installation of various packages +and libraries (PyNE, OpenMC, DAGMC, and Geant4) required +for running nuclear physics simulations and analyses." echo set_install_directory set_env_name