[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-user: Garchive utility



Hello,

Followers of this list will recall a discussion several weeks ago
about creating a project archiver.  This utility would automatically
create a portable file holding all design materials, including a local
copy of the symbol files.

At that time, I proposed writing one in Python.  Now I have done just
that, and am making the utility available to the gEDA community under 
the GPL. You can get it at: 

http://www.brorson.com/gEDA/garchive/

It works with gEDA-20030901, but will probably also work with earlier
versions of gEDA.  It uses Python 2.2; I haven't tried it with an
older distribution of Python, but I can't imagine why it wouldn't work
(famous last words. . . .).

To install it just do this:

1.  Place the file garchive.py in your
${geda-source}/geda-utils-20030901/scripts directory.

2.  Update your Makefile using the instructions provided on the web
page.  The important part of this is that the new Makefile
hardcodes the location of the system gEDA resources into the script.
In C programs this is done using the config.h facility, but for a
script you need to hard code it.

(Ales, I have updated the Makefile.am to incorporate these changes for
the next time you create a new release.  You can pick up the new
Makefile.am file on my web page.)  

3.  Do a "make && make install" in your scripts directory.  You should
now be ready to use garchive.

Garchive runs in two modes, archive creation and archive extraction.
To create an archive, just do (for example):

garchive -v -o OutputArchive.gar Schematic1.sch Schematic2.sch Schematic3.sch

To extract an archive, just do (for example):

garchive -e ProjectArchive.gar

Note that the preferred file extension is ".gar" for _g_EDA
_ar_chive.  Further instructions and documentation are in the script
itself.  

Please give it a spin, and direct all bugs and comments to me.  I am
particularly interested in bug reports; this is a "beta" release (as
it were), but it should run without problems.  I have done a bit of
testing.  Nonetheless, nothing is ever perfect and if people discover
bugs I would like to fix them.  If you do report a bug, please be as
specific as possible about what you did when you encountered the
problem. 

Thanks,

Stuart