github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

masak / proto

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 53
    • 3
  • Source
  • Commits
  • Network (3)
  • Issues (3)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (1)
    • master ✓
  • Tags (0)
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

A a hyper-lightweight dependency tracking and project installation system — Read more

  cancel

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Merge branch 'installed-modules' 
masak (author)
Tue Feb 02 07:09:43 -0800 2010
commit  f69cddb47884553c25d18199072768b5f4a5ec4c
tree    682437013b387fd9633a95d94828e2a0b5ab34ac
parent  cf121559a1e3b4557ff8d88f54937003b6734061 parent  910df33bc9a440f72f39f4b965e9c019587e9c27
proto /
name age
history
message
file .gitignore Mon Sep 14 01:01:04 -0700 2009 Implemented 'Perl 6 executable' and Rakudo 'mak... [mberends]
file AUTHORS Thu May 21 12:50:51 -0700 2009 [AUTHORS] added PerlJam [masak]
file LICENSE Tue Feb 17 01:09:52 -0800 2009 added AUTHORS and LICENCE; referred from README [masak]
file PIONEER Tue Jun 02 12:56:20 -0700 2009 [PIONEER] slight rewording [masak]
file README Tue Jun 02 05:08:30 -0700 2009 [README] grammar-o [masak]
file create-new-project Thu May 21 12:50:36 -0700 2009 [create-new-project] shebang s/sh/bash/ Thanks... [masak]
file dotty-progress Thu May 14 15:43:52 -0700 2009 [dotty-progress] added usage information [masak]
file installer Mon May 11 09:12:47 -0700 2009 moved dispatching code into Installer.pm The m... [masak]
directory lib/ Tue Feb 02 03:20:57 -0800 2010 [Ecosystem] removed unnecessary warning If the... [masak]
directory logotype/ Thu May 21 15:03:34 -0700 2009 [logotype/proto.svg] further simplifications [masak]
file projects.list Tue Feb 02 07:09:43 -0800 2010 Merge branch 'installed-modules' Conflicts: l... [masak]
file proto Tue Feb 02 07:09:43 -0800 2010 Merge branch 'installed-modules' Conflicts: l... [masak]
file tab-completion.sh Mon Sep 28 04:52:38 -0700 2009 [tab-completion.sh] Tab-complete the project na... [carlin]
README
Proto -- making your life slightly easier

Proto is (C) Copyright 2009 by the Proto contributors (as listed in
AUTHORS). The license is Artistic 2.0; see LICENCE.

Proto is a hyper-lightweight dependency tracking and module installation
system. Its only purpose is to help you set up a running environment where
you can play with Perl 6 modules with as little hassle and as few questions
as possible. It is not to be taken seriously in any way. It is not a full-
fledged module installation system. It is a prototype; in fact, its very name
was chosen to indicate this fact. The conditions under which it can work are
temporary -- the mechanism by which it ties together modules is a short-term
hack in Rakudo Perl 6. Nothing lasts forever, but that holds especially true
for this installer.

Proto is terse, clear and no-nonsense. It doesn't spew output all over your
terminal when building things. It doesn't have a lot of different flags. It
tries to do one thing, and do it well: handle the dependencies between your
projects.

What proto will do for you:

1. Install Parrot
2. Install Rakudo
3. Install and test Perl 6 modules
4. Create new modules (in projects, with tests)
5. Help Perl 6 code use all these modules

To install Parrot and Rakudo, type the following at the prompt:

  % ./proto

Installation of Parrot and Rakudo is merely a convenience; what proto was
really built for is installing modules. The command

  % ./proto install <module>

will look among its list of registered modules for <module>, and download and
build whatever it finds.

Should the downloaded module happen to explicitly depend on other modules,
these will be downloaded and built before the dependent module is built. And so
on, until it all bottoms out.

The update command

  % ./proto update <module>

will check the module <module> and all that depend on it for updates, and
rebuild them in the required order. Omit the name of the module, and all your
installed modules will be updated.

See the file PIONEER for how to set up your project with proto, or let the
create-new-project script make one semi-automatically.

Removing a module is as simple as

  % ./proto uninstall <module>

If a dependency cycle is detected during the download process, the install
is aborted and the dependency cycle is described. It might still be possible
to install all modules despite the cycle, but the mere fact that there's a
cycle merits human attention.

There are many things which proto does not do. Even so, it is the hope of its
authors that it might be of some use, and make Perl 6 poets bold in splitting
up their work into logical independent units.
Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server