Sorcery is a package management system writen in python. It is based off of the Sorcery package management system writen in BASH for Source Mage GNU/Linux, which was originally writen by Kyle Sallee for Sorcerer GNU/Linux. In addition to being able to work with native Sorcery 'spells' which are analygous to Gentoo's ebuilds. This python version is to be able to work with multiple distributions package managers, such as apt, yum, etc. This effectively allows a Sysadmin to learn 1 set of commands, and from their no matter which distribution they are using they don't have to learn new commands.
All programs have their main name, which in general is 'py___' for example Cast is 'pycast.' The names also have themes which can be activated through sorcery's menus. Each theme when active, creates a symlink from the them command to the main program. The themes include, 'Sorcery' which can only be installed if the BASH version is not also installed. Other Themes, 'Harry Potter', ...
This is the menu driven program of the same name. From the menus, you can set the options, ...
This program is used to install programs.
On Sourced based distributions, running this program will:
- Download the source tarball (file?) (If not already downloaded)
- Extract the package to an appropriate folder.
- Compile
- Install
All others: If compile switch is specified:
- Download the source package installer (If not alreaded downloaded)
- Compile
- Install Else if the package is not provided by the system's native package manage and is in Sorcery:
- Download the source tarball
- Extract the package to an appropriate folder.
- Compile
- Create native package per the system package manager (ie. create a *.deb file for Debian based systems).
- Install the built package. Else:
- Interface with the system's native package manager to install the program.
Print requested information.
Work with files: Extract, Compresss, Read, ...
Uninstall program.
Manage package manager repositories. Add/Remove/Update/...
Download files.
Download source files specified by a spell. If a URL is provided rather than a spell, download the URL (act like wget, but for ALL url types) Supported url types: http(s) ftp(s) torrent git cvs svn rsync ...
pysorcery/ init.py: Provides top level Sorcery variable definitions, along with Code copywrite information. cli/ init.py: archive.py: gaze.py: lib/ init.py: Provides top level Sorcery API. All applications within the CLI folder should call classes from within this file, no deeper. files/ init.py archive/ init.py ... audio/ init.py ... compressed/ init.py ... video/ init.py ... sorcery/ init.py ... smgl/ init.py ... apt/ init.py ... util/ init.py ... plugins/ init.py archive/ init.py: Provides common functions for multiple sub commands. add.py: create.py: extract.py: list.py: formats.py: remove.py: concatenate.py: ... gaze/ init.py: ... scribe/ init.py: ... scribbler/ init.py: ... sorcery/ init.py: ...