From eae8400600038a0ad5749a24e265f547f42b1686 Mon Sep 17 00:00:00 2001 From: Maxwell Date: Tue, 1 Oct 2024 11:24:26 +1000 Subject: [PATCH] Update README.md --- README.md | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 566c9f5..a6fc804 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ### What is Mapm? -Mapm is a package manager (written in Kotlin) for, you know, managing packages. So far it's VERY early in development. Mapm is designed to run on the JVM, while using a UNIX-like system. +Mapm is a package manager (written in Kotlin) for, you know, managing packages. So far it's VERY early in development. Mapm is designed to run on the JVM, while using Linux system (as the packages are only compiled for Linux at present). ### Why? @@ -18,22 +18,33 @@ Run the command `curl https://maxwellj.xyz/mapm/mapm.sh | bash`. This will run a #### Manual -Make directories /usr/mapm and /usr/mapm/tmp. Add /usr/mapm to path. Download the files and make sure Gradle is installed. Run `gradle distTar` to compile a Tar file with all the needed Jars in it, including mapm. Untar the archive in build/distributions. Run `./(where tar extracted to)/bin/mapm`. (or mapm.bat if you're crazy) +Make directories /usr/mapm and /usr/mapm/tmp. Add /usr/mapm to path. Download the files and make sure Gradle is installed. Run `gradle distTar` to compile a Tar file with all the needed Jars in it, including mapm. Untar the archive in build/distributions. Run `./(where tar extracted to)/bin/mapm`. ### Usage -Run mapm. For now, command line arguments aren't supported, but this is planned for a later date. Once you're in mapm, you can type `grab` and press enter. Type the thing you want and it will download. +Mapm has a few options for the command line. So far these are: + +* g: Grab a package from the internet. +* r: Remove a package from your system. (work in progress) +* c: Make a checksum that Mapm can reproduce and recognise. +* m: Automatically make a Mapm package (work in progress) +* h: Get help. + +Some example commands: + +* `mapm g mash`: Grab the package `mash` and install it. +* `mapm r mash`: Remove the package `mash` from your computer. +* `mapm c mash-0.0.2.tar.xz`: Generate a checksum for the file `mash-0.0.2.tar.xz` ### Making a mapm package To make a mapm package, go to https://git.maxwellj.xyz/mapm/stable and submit a pull request. Add your package's name as the file name, and the link to where your package is stored as the contents. Don't add anything more or you'll confuse mapm. Make sure the link points to a .tar.xz archive. The file structure should be like this: ``` -├── (packagename) (A symbolic link to your executable in packagename.d) +├── (packagename) (Your executable) └── (packagename).d - ├── executable └── Any other files your package needs ``` -Zip all that up into a .tar.xz file and upload it to your own server. After creating the .tar.xz, use Mapm to create a checksum for the file. Run mapm, type `checksum`, press enter and type the file path. For now, there is no polished system for package processing, so for now send an email to max AT maxwellj.xyz with the package link and hash. +Zip all that up into a .tar.xz file and upload it to your own server. After creating the .tar.xz, use Mapm to create a checksum for the file. Run `mapm c (file name` to get the checksum. For now, there is no polished system for package processing, so for now send an email to max AT maxwellj.xyz with the package link, hash and all dependencies required to run your program. **Note**: If your package requires an update, make sure to email an updated link and hash, otherwise Mapm will reject your package when it is being installed.