-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
63 lines (50 loc) · 2.57 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
rubygems_bldr
=============
This rubygems_bldr is similar in intent to the perlmod_bldr which is
to bridge the gap between a language specific packaging system like "gems"
or "cpan" and general purpose packaging systems like debian, gentoo,
RPM, conary, and the like. The intent is to create a bundle of ruby gems
and release that collection every so often to developers and application
servers with little knowledge of the language specific package manager.
This is a standard autoconf package that runs the gems utility when you
type "make dist" to harvest the internet for a list of gems. The
resulting tarball output from "make dist" contains in it all the gem
tarballs so that you can build/stage install/package these gems for
downstream release targets like Solaris, Mac, Cygwin, Linux without
a connection to the network. To release you follow the standard autotools
approach
tar xzf <release tarball>
cd <release dir>
./configure
make
make DESTDIR=/my/pkg/dir install
All general purpose package managers have tools to automate autotools
package creation.
Ruby gems packages are easy to package compared to CPAN. Thanks gems!
This package is currently very early...
It doesn't yet deal with firewall proxies.
It doesn't yet deal with itself being installed!!!
This may get tricky to fix...
Doesn't yet modularize gems into package groups
Is a first attempt from a non-ruby coder (Lee Thompson)
That said, it is a way keep current with gems updates with formal releases.
If new gems releases are problematic, you can go back and patch old gems
since the source release can be patched. (I've been bitten by CPAN packages
disappearing off CPAN causing interesting maintenance scenarios).
This package supports staged installs, important for package building.
http://www.gnu.org/software/automake/manual/html_node/DESTDIR.html#DESTDIR
With a staged install, you can develop the next version of the pacakge
without root access which is superior because more people can participate
in the development and you don't have to go ask your sys admin for root
access.
To add GEMS
===========
1) edit the get_rubygems.sh shell script. In it you will find a "myGEMS"
variable. Add your favorite GEM to this list and make sure it is
hosted on gems.rubyforge.com or gems.github.com.
2) Bump the version in the configure.ac autoconf script
3) Run the "./configure_pkg.sh" shell script which will harvest the
GEMS off the net and create a release tarball.
4) If the package looks good, commit the changes to git
Lee Thompson
06-Sep-2008