Skip to content
Christian Fillion edited this page Nov 16, 2016 · 109 revisions

Note: If you came here to share your work through ReaPack, check out the various ReaTeam repositories first. Most of these come pre-configured in ReaPack and contributing there is simpler than maintaining your own repository. Create an Issue or send a pull request one a ReaTeam repo to get in touch or to add your content directly.

Welcome to the reapack-index wiki! reapack-index is a package indexer for git-based ReaPack repositories. This software is intended to be used by repository owners and maintainers.

This page explains how to install reapack-index and how to use it to create and update your own repository (index file). The documentation for the metadata header format is available in Packaging Documentation.

ReaPack repositories are made of a single XML index file describing its contents. Check out Index Format documentation on ReaPack's wiki to learn more.

Summary

  1. Installation
  2. Getting started
  3. Updating the index
  4. Filling the about section
  5. Resources

Installation

  • On OS X:
    1. Install Homebrew (recommended)
    2. Run brew install ruby to install a newer version of Ruby (v2.3+ is required)
    3. Run brew install cmake pkg-config to install required build dependencies
    4. Run gem install reapack-index
  • On Linux or other Unix systems:
    1. Install Ruby v2.3+ with development headers, cmake and pkg-config
    2. Run gem install reapack-index
  • On Windows: Download and run the latest automatic installer from this page

Getting started

Start by opening a command prompt:

  • On Windows: Type "cmd.exe" in the start menu and hit the Return key
  • On OS X: Open Terminal.app from the directory /Applications/Utilities/

Then navigate to the location of your local git repository with the following command:

# Mac OS X:
cd /path/to/your/repository

# Windows:
cd C:\Path\To\Your\Repository

Let's start by testing your repository to see if it can be indexed as it is:

reapack-index --check

If everything goes well, you should see something similar to this with each dot representing a valid package:

................................................................................

Finished checks for 80 packages with 0 failures

If you see a different output containg 'F' and errors, fix them and recheck before continuing (see also Packaging Documentation).

Now let's create the index file which will tell ReaPack what is available in the repository. Commit any modified files in git then run this command:

reapack-index --name 'FooBar Scripts'

All done! Your repository should now be ready to be imported into ReaPack using the raw url to the index.xml file (typically https://github.com/USER/REPO/raw/master/index.xml for repositories hosted on GitHub).

See Packaging Documentation for complete instructions on how to creating packages.

Updating the index

To scan new commits and applies the changes to the index, run reapack-index without any argument:

reapack-index

If you wish to alter a released version (eg. to fix a mistake), commit your changes then run:

reapack-index --amend

It is also possible to re-index a commit or a file that was scanned previously:

reapack-index --scan 7a4abf8
reapack-index --scan 7a4abf8 --amend
reapack-index --scan 'MIDI Editor/Some File.lua'

Filling the about section

ReaPack can display a formatted description of your repository and additional links.
This uses the RTF format internally, which can be opened and edited in WYSIWYG software like Microsoft Office or Textedit.app. Many other formats (such as Markdown) are supported if Pandoc is installed on your computer.

To put the content of README.md in the about dialog, run this command:

reapack-index --about=README.md

The generated RTF file can be exported and opened it with a specialized editor:

reapack-index --dump-about > about_dumped.rtf
# open about_dumped.rtf in your favorite editor and make edits
# then after saving your changes, import it back:
reapack-index --about=about_dumped.rtf
# about_dumped.rtf can be deleted at this point

Adding or editing links:

reapack-index --link 'http://example.com'
reapack-index --link 'Link Label=http://example.com/page.html'
reapack-index --donation-link 'http://example.com'

Removing links:

reapack-index --link '-http://example.com'
reapack-index --donation-link '-Link Label'

Resources

Clone this wiki locally