By Dev | 31 July, 2017
This document
- Version: 0.0.1
- Date: 2017-07-31
- Author: Boxxd Dev.
Changes should be addressed to dev@boxxd.org.
Introduction
Boxxd uses a collection of meta files for automation.
The files define the characteristics of the item concerned.
For example a component i.e. a plugin, can have three or more files:
- meta.toml specifying the general meta for handling
- item.toml describes the object itself
- rights.toml describes which licences are applicable.
The meta file attributes are in TOML format.
Package storage
Each package has its own storage area:
.wiring/.info/pkg/<plugin-name>
Description of apiVersion 1
boxxdBoxPkg
A couple of examples of files are shown below.
meta.toml
++++
#
# Meta Configuration File
#
# Description: This is the meta configuration file for the wiring process
# (c) Boxxd 2017
# http://boxxd.org
# Keeper: reg@boxxd.org
[meta]
# The configuration file basics
schema = "wiring"
issueDate = 2017-01-01
fsFileNameStub = "meta"
[wiring]
# Info about the wiring schema
schemaOrg = "boxxd"
versionID = 1
apiName = "boxxdBoxPkg"
fsRootDirName = ".wiring"
fsFileExt = "toml"
# Definitions of other referenced components
[wiring.item]
fsFileNameStub = "item"
[wiring.rights]
fsFileNameStub = "rights"
# ****** Copyright Notice to be kept in this file ***************
#
# Copyright 2017 Boxxd. http://boxxd.org. Licensed under the Apache License, Version 2.0.
# ************ end of meta conf file ************
++++
item.toml
#
# Item info file
#
# Description: This is the information and configuration file for a item
# (c) Boxxd 2017
# http://boxxd.org
# Keeper: reg@boxxd.org
#
[wiring.item]
apiSpec = "item"
versionID = 1
[item]
name = "plugin-repo-en"
title = "Repo Plugin"
subtitle = ""
abbrev = "repo"
aliases = []
category = "plugin"
desc = "The repo plugin has the directories Archive, Works, Items, Sources, each with a file describing the function of the directory."
# long text
additionalInfo = ""
catalogUrl = ""
# Tags
keyword = ["repo"]
note = ""
[standardItemIdentification]
itemNo = ""
uuid = ""
ean = ""
image = ""
symbol = ""
versionTag = "0.1.0"
versionNo = 1
versionDate = 2017-07-31T00:00:00Z
# List the contents - use inline table to keep it compact. Can be extended later with other key values.
packageItems = [
{itemName = "archive-dir"}
{itemName = "Items-dir"}
{itemName = "Sources-dir"}
{itemName = "works-dir" }
]
[[content.language]]
name = "English"
# ISO 639-1 code
isoAlpha2 = "en"
# for multiple authors just copy the block below and change the details
[[author]]
initials = ""
firstname = ""
surname = "Dev"
fullname = "Boxxd Development"
alias = "Dev"
role = "Dev"
organisation = "Boxxd"
[author.address]
email = "dev@boxxd.org"
gitHub = ""
linkedin = ""
# end of author definition block
# info for admin and others - as a jotter, for tracking
[adminInfo]
note = ""
todo = ""
# work info - i.e. sources, etc
[work]
# Cross reference file system object functions to names
# ie directories, files
[[fsObject]]
item = "archive-dir"
name = "Archive"
path = "/"
type = "dir"
symbol = ""
[[fsObject]]
item = "Items-dir"
name = "Items"
path = "/"
type = "dir"
symbol = ""
[[fsObject]]
item = "Sources-dir"
name = "Sources"
path = "/"
type = "dir"
symbol = ""
[[fsObject]]
item = "works-dir"
name = "Works"
path = "/"
type = "dir"
symbol = ""
# ****** Copyright Notice to be kept in this file ***************
#
# Copyright 2017 Boxxd. http://boxxd.org. Licensed under the Apache License, Version 2.0.
# ************ end of item file ************
++++
rights.toml
+++
#
# Rights info file
#
# Description: Licenses applying to the item
#
# (c) Boxxd 2017
# http://boxxd.org
# Keeper: reg@boxxd.org
## Notes: Definitions are nearly all specially defined.
#
[wiring.rights]
apiSpec = "rights"
versionID = 1
# Of how this can be used.
[[licenses]]
owner = "Boxxd"
type = "Apache License 2.0"
item = "Package"
note = ""
# For the assets
[[copyright]]
owner = "Boxxd"
type = "CC By Int 4.0"
date = 2017-07-31
item = "Package assets"
note = ""
# ****** Copyright Notice to be kept in this file ***************
#
# Copyright 2017 Boxxd. http://boxxd.org. Licensed under the Apache License, Version 2.0.
# ************ end of rights file ************
++++