Compare commits

..

8 Commits

5 changed files with 72 additions and 3 deletions

View File

@@ -1,3 +1,64 @@
# Nebula <img src="icon/icon.svg" width = 24>
The package manager for the Comet programming language.
## Installation
Nebula can be installed using `pipx` with the following command:
> pipx install nebpkg
or from `pip`:
> pip3 install nebpkg
## Usage
Nebula has several subcommands. Type `neb --help` to see the help menu.
### Getting package index
> neb pull
### Installing a package
> neb install <package_name>
You can provide a version with an @ symbol:
> neb install io@0.1.0
### Uninstalling a package
> neb uninstall <package_name>
### Searching for packages
> neb search <query>
By default the command won't show packages you already have installed, you can include installed packages with the `--show-installed` option.
### Listing installed packages
> neb list
### Building a package
You can use Nebula to build your package you're developing in C. Run the following command from the root of your package, and ensure you have a `src` directory:
> neb build .
You can replace the `.` with a directory if you want to build a directory as a package.
## How do I make a package?
There are some templates that you can use created by the Comet group. There is a [tutorial](https://chookspace.com/Comet/Comet/wiki/External+Libs+-+Table+of+Contents.-) on the [Comet repo's wiki](https://chookspace.com/Comet/Comet/wiki) with documentation on creating external libraries.
## Getting a package on Nebula
First, create a repository with your package. Once you've done that, submit a pull request with a commit editting the `package_index.json` file in the Nebula repository. Add the following the the index:
```json
...
"your_package_name": {
"repository": "https://chookspace.com/owner of the package/your package name",
"description": "description here",
"gitAuthor": "owner of the package"
}
}
```
Your package will be checked and if all is well, added to the Nebula index!

View File

@@ -19,6 +19,9 @@ neb install packageName@1.0.0
(replace the number with the version number of the rock you want to install)
## Changelog
### 1.2.1
- Made `neb build` look for C files in a src/ folder instead of the current folder
### 1.2.0
- Add support for modules written in Comet
- Made it so that you don't have to build Comet to install the headers

View File

@@ -15,9 +15,9 @@ def build(args):
out_path = os.path.join(comet_libs_dir, f"{folder_name}.cometlib")
c_files = glob.glob(f"{args.path}/*.c", recursive=True)
c_files = glob.glob(f"{args.path}/src/*.c", recursive=True)
if len(c_files) == 0:
print_error_message(f"No C files were found in that directory! [d white]({folder_name})[/d white]")
print_error_message(f"No C files were found in that directory! [d white]({folder_name}/src)[/d white]")
sys.exit(1)
with console.status("Building", spinner="moon") as status:

View File

@@ -3,5 +3,10 @@
"repository": "https://chookspace.com/Comet/io",
"description": "Input / Output in Comet.",
"gitAuthor": "Comet"
},
"socket": {
"repository": "https://chookspace.com/Comet/socket",
"description": "Socket implementation in Comet.",
"gitAuthor": "Comet"
}
}

View File

@@ -5,7 +5,7 @@ with open("neb/README.md", "r") as f:
setup(
name="nebpkg",
version="1.2.0",
version="1.2.1",
description="Nebula, the package manager for the Comet programming language.",
classifiers=[
"Development Status :: 4 - Beta",