[9fans] contrib(1) (was: opera under linuxemu)



hola,

What about a
contrib/386 contrib/src
so that we could pull most/all of contribs just at a go?

we (me and steve) have been playing and testing some tools
to help with this:



CONTRIB(1) CONTRIB(1)

NAME
create, install, pull, push, remove - trivial package
management

SYNOPSIS
contrib/create [ -d dependency ] [ -r root ] [ -u user ] [
-x exclude ] name proto
contrib/install [ -f ] [ -r root ] user/name
contrib/list [ -v ] [ user | user/name ]
contrib/pull [ -c file ] [ -s file ] name
contrib/push name
contrib/remove name

DESCRIPTION
Contrib is a simple package management system based on
replica(1). It can be used to create, install, upgrade and
remove software packages in the sources repository. To cre-
ate a package and become its maintainer it is necessary to
have an authenticated sources account and a contrib direc-
tory /n/sources/contrib/$user.

Contrib/create
Create builds a new package name, and performs an ini-
tial push to sources. The file structure is defined by
proto. Dependencies can be specified with the -d name
option. If the package is staged away from its final
destination a root directory for the published package
may be specified with -r root. If the user has a dif-
ferent name for their sources account from their cur-
rent user account then this may be specified with the
-u user option. Use the -x option to exclude the
exclude files from the synchronization.

When create runs it puts the current window into hold
mode and reads text describing the package. The first
line of this text is printed by contrib/list and should
be a short summary of the package's contents.

Contrib/install
Install the package name maintained by the user user to
the local file system. The -f option forces the instal-
lation to continue irrespective of missing dependent
packages. Packages are normally installed at / however
an alternative root directory may be specified with -r
root.

Contrib/list
List the available packages and a one line description
of each. The -v option produces a more verbose multi-
line form.

Contrib/pull
Update the local package name from sources. Locally
modified files cause a warning and are not overwritten
unless the -c or -s options are used - as described in
replica(1).

Contrib/push
Used by the package maintainer to update the package
name on sources from the local system.

Contrib/remove
Print the commands necessary to remove the package
name, this allows the commands to be edited before they
are sent to the shell. The commands printed for files
which have been modified with respect to the repository
are commented out.

EXAMPLE
Install the abaco web browser.

% contrib/install fgb/abaco

FILES
/usr/$user/lib/replica databases of packages cre-
ated locally.
/dist/replica/* databases of packages
installed locally.
/n/sources/contrib/rob/replica database of rob's packages.
/n/sources/contrib/rob/root files representing in rob's
packages.

SOURCE
/rc/bin/contrib

SEE ALSO
proto(2), replica(1), replica(8)

BUGS
Send bug reports to benavento@xxxxxxxxx




---
it's working quite well, for instance I can do

lotte% contrib/list fgb
fgb/4th: 4tH 3.5b - Forth-like interpreter.
fgb/abaco: Abaco: lame web browser for Plan 9, eternally a work in progress.
fgb/breakout: Breakout - breakout/arkanoid clone.
fgb/bz2: BZ2 library for APE
fgb/contrib: Contrib - Trivial Package Management
fgb/curses: PDCurses 3.0 library for APE.
....

to install it you do:

% 9fs sources; /n/sources/contrib/fgb/root/rc/bin/contrib/install fgb/contrib

Federico G. Benavento

---
/bin/fortune:
If you think before you speak the other guy gets his joke in first.

.



Relevant Pages

  • Re: The previous nonsense (formerly why linux?)
    ... E: Couldn't find package K3B ... deb http://http.us.debian.org/debian etch main contrib non-free ... Install hpoj. ...
    (Debian-User)
  • apt-get reports conflicts while installing j2sdk
    ... I am trying to install Java and yesterday installed ... Reading Package Lists... ... Binary-3 ]/ unstable contrib main ... deb-src http://http.us.debian.org/debian testing main contrib non-free ...
    (Debian-User)
  • Re: [9fans] Man pages for add-ons
    ... file has changed - you would have to use ISOs though as tar doesn't ... Distributing tars has a big disadvantage over replica (even if that access ... I really don't understand why people don't line contrib and want to put stuff ... you want to know which file make up a package, ...
    (comp.os.plan9)
  • Re: Installing xfce 4.6 on Lenny
    ... deb-src http://127.0.0.1:9999/debian experimental main contrib non-free ... deb-src http://127.0.0.1:9999/debian-security stable/updates main contrib ... Package: * ...
    (Debian-User)
  • Re: [9fans] contrib(1) (was: opera under linuxemu)
    ... create, install, pull, push, remove - trivial package ... Contrib is a simple package management system based on ... destination a root directory for the published package ...
    (comp.os.plan9)