aboutsummaryrefslogtreecommitdiff
path: root/snag/readme.txt
diff options
context:
space:
mode:
Diffstat (limited to 'snag/readme.txt')
-rw-r--r--snag/readme.txt40
1 files changed, 24 insertions, 16 deletions
diff --git a/snag/readme.txt b/snag/readme.txt
index ca358b6..ffc6041 100644
--- a/snag/readme.txt
+++ b/snag/readme.txt
@@ -1,15 +1,15 @@
# SNAGGLE Package Manager (snag)
## Useful Subcommands
-`install`/`inst` - install the specified package(s) (default)
-`remove` - uninstall the specified package(s)
-`upgrade/'up` - upgrade the package database
-`find`/`search` - list packages whose metadata matches specified search string (flag to limit to installed)
-`info`/`desc` - describe the metadata (and install data) of the specified package(s)
-`log` - open your pager to the build log of the specified package
+install/inst - install the specified package(s) (default)
+remove - uninstall the specified package(s)
+upgrade/up - upgrade the package database
+find/search - list packages whose metadata matches specified search string (flag to limit to installed)
+info/desc - describe the metadata (and install data) of the specified package(s)
+log - open your pager to the build log of the specified package
-`files` - list the installed files of the specified package(s)
-`why` - list why this package is installed (manually installed, as a dependency, from a group)
+files - list the installed files of the specified package(s)
+why - list why this package is installed (manually installed, as a dependency, from a group)
## Important Directories
Package Database - /var/snag/pkgs/
@@ -18,24 +18,32 @@ Logs/In Progress Builds - /var/snag/logs/
SNAG Configuration - /etc/snag/
## Terminology
-"Package Database" - the directory containing package descriptions
-"Install Database" - the directory containing information on installed package
-"Package Description" - the directory and script containing build instructions for a package
-"Package Info/Metadata" - the metadata encoded in the package description
-"Package Attribute" - a single key value property of the package info
-
-## Package Format
+Package Database - the directory containing package descriptions
+Package Description - the directory and script containing build instructions for a package
+Package Info/Metadata - the metadata encoded in the package description
+Package Attribute - a single key value property of the package info
+Install Database - the directory containing information on installed package
+Install Description - the data stored about a package in the install database
+
+## Package Description Format
Each package has a directory in the package database, named by its `id`.
Inside each package directory is the description script named `{id}.sh`
The description script should have functions for `configure`, `build`, and `install`
The description script should define variables for attributes with the name `pkg_{attr}`
+## Install Description Format
+TBD. Will contain at least:
+- date installed
+- flists
+- install reason
+
+
## Interesting Features
- switch between cli and tui mode mid run
- build packages that aren't in the database
Packages have the following attributes:
-`id` - the identifier name of the package. everything uses this
+`id` - the identifier name of the package. everything uses this
`name` - the display name of package
`desc` - the short description of the package