Skip to content

Commit

Permalink
Merge pull request #4 from ahnaf-tahmid-chowdhury/develop
Browse files Browse the repository at this point in the history
Version 0.1.1
  • Loading branch information
ahnaf-tahmid-chowdhury authored Sep 1, 2023
2 parents a8a2f29 + 866ee0f commit 8d455a4
Show file tree
Hide file tree
Showing 5 changed files with 96 additions and 17 deletions.
26 changes: 24 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -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
Expand Down Expand Up @@ -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



Expand All @@ -73,4 +95,4 @@
### Fixed
- Set cython<3 (#2)

[v0.0.1]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/0.0.1
[v0.0.1]: https://github.com/ahnaf-tahmid-chowdhury/NuclearBoy/releases/tag/v0.0.1
42 changes: 42 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -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'
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -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/<USERNAME>/<REPOSITORY_NAME>.git`
2. Navigate to the project directory: `cd <REPOSITORY_NAME>`
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`

Expand Down
28 changes: 19 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# <img src=".github/logo/nuclear-boy.svg" alt="" style="height: 60px">NuclearBoy</h1>
# <img src=".github/logo/nuclear-boy.svg" alt="" style="height: 64px">NuclearBoy</h1>

![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.

Expand All @@ -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
Expand Down Expand Up @@ -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

Expand Down
13 changes: 9 additions & 4 deletions install-nuclear-boy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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() {
Expand Down Expand Up @@ -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"
Expand Down Expand Up @@ -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
Expand Down

0 comments on commit 8d455a4

Please sign in to comment.