Mausoleum

From XOmB wiki
Jump to: navigation, search
This page is part of a series on Related Projects.

Mausoleum (maus for short), is a scriptable package manager based on git and written in minid.

Installation

XOmB

Currently there is no file system or block devices for a file system in XOmB so if you want to use Mausoleum, you will have to use Linux.

Linux

Prereqs

  • git
  • minid
  • The maus executable and wrapper script. Go here and click the download button to get maus.

Install Steps

  1. Create a /mausoleum directory - This will work as the working directory for maus.
  2. Create a /mausoleum/packages directory - This will hold the .maus package files
  3. Move to the /mausoleum directory
  4. Extract the archive you downloaded above into this directory. You will get a directory with the same name as the archive.
    1. Move into this directory
    2. Make sure the maus and maus.md file are marked as executable. If they are not, mark them executable.
    3. Move the file named maus (this is the wrapper script) into your path somewhere, for example /usr/local/bin
    4. Move the maus.md file up a level into the /mausoleum directory
    5. If you want the README move it up to /mausoleum also
    6. Move up a level and remove the directory with the long name
  5. You are finished installing
  • Note: You will probably need to edit the first line of maus.md to correspond to where your mdcl is located.

Remote Repositories

Add

  1. Open /mausoleum/repos.lst in your text editor of choice
  2. Add a line in the format "<repo url> <name>" for the repo you want to add
    1. repo url = the url where the package repository is located
    2. name = the name of the repositories directory

Remove

  1. Open /mausoleum/repos.lst in your text editor of choice
  2. Remove the line corresponding to the repo you want to remove

Usage

Install a package named foo

maus --install foo
maus -i foo

Uninstall a packaged named foo

maus --uninstall foo
maus -u foo

Update the package list

maus --update
maus -p

Search for a package named foo

maus --search foo
maus -s foo

Design

The basic idea behind Mausoleum, like other package managers, is to take package files that contain information about how a program is to be obtained (if it doesnt already exist in the package file itself) and how it should be installed. The package file associated with Mausoleum is the .maus file. I know, not very creative but since we don't live in a world with only three character extensions anymore, I want to have a it obvious what program the files belong to. Since the idea of a package manager is so simple. I will leave most of the design details to be said in the package spec since that is where you get into what makes maus different.


External Links