Hi David,

On Thu, Feb 4, 2010 at 7:13 AM, Dr. David Kirkby
<david.kir...@onetel.net> wrote:

<SNIP>

> I will probably need your help on how to apply those. None of them look
> likely candidates, but #6820 is perhaps the most likely of them all, as it
> is related to documentation. But the patch looks particularly complicated
> for his, depending on other patches. I don't know how to create a source
> source with just that patch applied.

Here are some instructions for a quick-and-dirty way. Say you start
with the source tarball of Sage 4.3.0.1.alpha2. Navigate to the
standard spkg repository and uncompress the package that makes up the
Sage library spkg. Then cd to the directory that makes up the Sage
library:

[mv...@mod sage-4.3.0.1.alpha2]$ pwd
/dev/shm/mvngu/sage-4.3.0.1.alpha2
[mv...@mod sage-4.3.0.1.alpha2]$ cd spkg/standard/
[mv...@mod standard]$ tar -jxf sage-4.3.0.1.alpha2.spkg
[mv...@mod standard]$ rm sage-4.3.0.1.alpha2.spkg
[mv...@mod standard]$ cd sage-4.3.0.1.alpha2/
[mv...@mod sage-4.3.0.1.alpha2]$ ls
bundle  export       module_list.py  README.txt  setup.py      spkg-install
c_lib   install      PKG-INFO        sage        spkg-delauto
doc     MANIFEST.in  pull            sage-push   spkg-dist

Ensure you have configured Mercurial to use the queues extension.
Mercurial queues, otherwise known as mq, is a powerful patch
management tool. Your $HOME/.hgrc file should have something like the
following:

[mv...@mod sage-4.3.0.1.alpha2]$ cat ~/.hgrc
[ui]
username = Your Name <yourn...@yourdomain.com>

[extensions]
# Enable the Mercurial queue extension.
hgext.mq =

Now use mq to apply the patch at #6820 [1] on top of Sage 4.3.0.1.alpha2:

[mv...@mod sage-4.3.0.1.alpha2]$ hg qimport
http://trac.sagemath.org/sage_trac/raw-attachment/ticket/6820/trac_6820-browsedocs-v4.patch
adding trac_6820-browsedocs-v4.patch to series file
[mv...@mod sage-4.3.0.1.alpha2]$ hg qpush
applying trac_6820-browsedocs-v4.patch
now at: trac_6820-browsedocs-v4.patch
[mv...@mod sage-4.3.0.1.alpha2]$ hg tip
changeset:   13554:a8d710b59e96
tag:         qtip
tag:         qbase
tag:         trac_6820-browsedocs-v4.patch
tag:         tip
user:        J. H. Palmieri <palmi...@math.washington.edu>
date:        Tue Oct 27 15:32:29 2009 -0700
summary:     6820/documentation: help() and browse docs from the Sage
command-line

[mv...@mod sage-4.3.0.1.alpha2]$ hg qfinish -a

Next, use tar and bzip2 to compress the patched Sage library:

[mv...@mod sage-4.3.0.1.alpha2]$ cd ..
[mv...@mod standard]$ tar -jcf sage-4.3.0.1.alpha2.spkg sage-4.3.0.1.alpha2
[mv...@mod standard]$ rm -rf sage-4.3.0.1.alpha2
[mv...@mod standard]$ ls sage-4.3.0.1.alpha2.spkg
sage-4.3.0.1.alpha2.spkg

Finally, tar up the patched Sage 4.3.0.1.alpha2 source distribution,
which should now be patched using the relevant patch from #6820:

[mv...@mod standard]$ cd ../../../
[mv...@mod mvngu]$ tar -cf sage-4.3.0.1.alpha2.tar sage-4.3.0.1.alpha2
[mv...@mod mvngu]$ ls sage-4.3.0.1.alpha2.tar
sage-4.3.0.1.alpha2.tar

Now you could move sage-4.3.0.1.alpha2.tar to another machine, untar
it and issue "make". Of course, you need to remember that
sage-4.3.0.1.alpha2.tar is more than just patches merged in that
release. You could rename the patched sage-4.3.0.1.alpha2 to
sage-4.3.0.1.alpha2.1, say, and then tar it up:

[mv...@mod mvngu]$ mv sage-4.3.0.1.alpha2 sage-4.3.0.1.alpha2.1
[mv...@mod mvngu]$ tar -cf sage-4.3.0.1.alpha2.1.tar sage-4.3.0.1.alpha2.1
[mv...@mod mvngu]$ ls sage-4.3.0.1.alpha2*.tar
sage-4.3.0.1.alpha2.1.tar  sage-4.3.0.1.alpha2.tar

Hope the above instructions help.

[1] http://trac.sagemath.org/sage_trac/ticket/6820

-- 
Regards
Minh Van Nguyen

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to