Menu

Tree [r4] /
 History

HTTPS access


File Date Author Commit
 autom4te.cache 2006-08-24 syllogism [r3] Started on Logger & Modified Settings to be a s...
 doc 2006-08-24 syllogism [r1] Initial Commit
 include 2006-08-24 syllogism [r1] Initial Commit
 src 2006-08-25 syllogism [r4] Implemented Logger & Made Settings a Singleton ...
 AUTHORS 2006-08-24 syllogism [r1] Initial Commit
 COPYING 2006-08-24 syllogism [r1] Initial Commit
 ChangeLog 2006-08-24 syllogism [r1] Initial Commit
 INSTALL 2006-08-24 syllogism [r1] Initial Commit
 LAYOUT 2006-08-24 syllogism [r1] Initial Commit
 Makefile.am 2006-08-24 syllogism [r1] Initial Commit
 Makefile.in 2006-08-24 syllogism [r1] Initial Commit
 NEWS 2006-08-24 syllogism [r1] Initial Commit
 README 2006-08-24 syllogism [r1] Initial Commit
 aclocal.m4 2006-08-24 syllogism [r1] Initial Commit
 autoscan-2.59.log 2006-08-24 syllogism [r1] Initial Commit
 config.guess 2006-08-24 syllogism [r1] Initial Commit
 config.sub 2006-08-24 syllogism [r1] Initial Commit
 configure 2006-08-24 syllogism [r1] Initial Commit
 configure.ac 2006-08-24 syllogism [r1] Initial Commit
 configure.scan 2006-08-24 syllogism [r1] Initial Commit
 install-sh 2006-08-24 syllogism [r1] Initial Commit
 missing 2006-08-24 syllogism [r1] Initial Commit
 mkinstalldirs 2006-08-24 syllogism [r1] Initial Commit
 tempfile.2.tmp 2006-08-24 syllogism [r1] Initial Commit
 tempfile.tmp 2006-08-24 syllogism [r1] Initial Commit
 test 2006-08-24 syllogism [r1] Initial Commit
 upsys.dia 2006-08-24 syllogism [r1] Initial Commit

Read Me

UpSys is a set of tools to update software - period.
Now you're probably thinking - that's quite a broad statement
to be waving around. .   but there is a reason for that statement.

UpSys is platform independant:

The server uses a plugin system for the database backend - 
so that if a user wants to store his data in postgresql
while another wants to use mysql, or SQLite, or XMl even. . 
it's possible.  .  .

The client runs as a service on the computers you wish to keep
up to date - keeping in contact with the central server to make
sure that your computer is up to date.  The client also uses
a plugin system.
The client itself is platform-independant.
There are a number of plugins for the client to different operating systems
and/or package management systems. 

For Instance, if you are using windows - you would want the client to use
the windows plugin - and if you were using debian, ubuntu, or another linux
distrobution that used the apt package management system, you would use the
apt plugin.


Through the series of plugins - the client application and the server
can maintain a simple API to communicate update information back and forth.

In order to provide this degree of versatility - we had to create our own
package management system that we could wrap other packages/software/updates in.
This functionality is implemented with libups - which provides the API
used to process UpSys packages (labeled as *.ups).

Now that I've explained the internals - lets get into how you (the user) will
probably be using UpSys.

<BIG NOTE!!! - WE NEED TO FIGURE OUT HOW TO DISTRIBUTE THESE .ups FILES!! - 
BECAUSE USERS ARE NOT GOING TO WANT TO CREATE THEM!!!>

Once you get your hands on some *.ups files that you want to distribute to your
client computers - you need to tell the server about them.  This is where
<INSERT NAME HERE> will come in handy - it's a cross-platform GUI to the server.
From there, you can easily add/remove packages that are available to clients.

Once this is done - the server will alert all of the known clients that new updates
are available and ask them to report in to make sure they are up to date.