forked from kiss-community/kiss
add initial manpages
This commit is contained in:
parent
d240830906
commit
86bbd66497
182
doc/kiss.1
Normal file
182
doc/kiss.1
Normal file
@ -0,0 +1,182 @@
|
|||||||
|
.Dd December 23, 2022
|
||||||
|
.Dt KISS 1
|
||||||
|
.Os
|
||||||
|
.Sh NAME
|
||||||
|
.Nm kiss
|
||||||
|
.Nd package manager
|
||||||
|
.Sh SYNOPSIS
|
||||||
|
.Nm
|
||||||
|
.Op Ar a|b|c|d|H|i|l|p|r|s|u|U|v
|
||||||
|
.Op Ar pkg...
|
||||||
|
.Sh DESCRIPTION
|
||||||
|
.Nm
|
||||||
|
is a tiny, self-contained package manager written in POSIX-compliant shell
|
||||||
|
script.
|
||||||
|
It is written with portability in mind.
|
||||||
|
.Pp
|
||||||
|
Running
|
||||||
|
.Nm
|
||||||
|
without any arguments prints help output.
|
||||||
|
Every action can be written as the full name or aliased by the first letter:
|
||||||
|
.Bl -tag -width Ds
|
||||||
|
.It Ar a|alternatives
|
||||||
|
List and swap package alternatives
|
||||||
|
.It Ar b|build
|
||||||
|
Build packages
|
||||||
|
.It Ar c|checksum
|
||||||
|
Generate checksums
|
||||||
|
.It Ar d|download
|
||||||
|
Download sources
|
||||||
|
.It Ar H|help-ext
|
||||||
|
List all installed extensions (see
|
||||||
|
.Sx Extensions ) .
|
||||||
|
.It Ar i|install
|
||||||
|
Install packages
|
||||||
|
.It Ar l|list
|
||||||
|
List installed packages
|
||||||
|
.It Ar p|preferred
|
||||||
|
List the owners of all files with alternatives
|
||||||
|
.It Ar r|remove
|
||||||
|
Remove packages
|
||||||
|
.It Ar s|search
|
||||||
|
Search for packages
|
||||||
|
.It Ar u|update
|
||||||
|
Update the repositories
|
||||||
|
.It Ar U|upgrade
|
||||||
|
Update the system
|
||||||
|
.It Ar v|version
|
||||||
|
Print package manager version
|
||||||
|
.El
|
||||||
|
.Ss Extensions
|
||||||
|
Anything in the user's
|
||||||
|
.Ev $PATH
|
||||||
|
which matches the glob
|
||||||
|
.Ql kiss-*
|
||||||
|
will be directly usable via the package manager.
|
||||||
|
The shortest available alias may also be used for each extension.
|
||||||
|
The second line in the script acts as a one-line doc string.
|
||||||
|
The default extensions are:
|
||||||
|
.Bl -tag -width Ds
|
||||||
|
.It Ar chroot
|
||||||
|
Enter a kiss chroot
|
||||||
|
.It Ar depends
|
||||||
|
Display a package's dependencies
|
||||||
|
.It Ar fork
|
||||||
|
Copy a package's repository files into the current directory
|
||||||
|
.It Ar help
|
||||||
|
Read KISS documentation
|
||||||
|
.It Ar link
|
||||||
|
Link a repository file to another repository
|
||||||
|
.It Ar maintainer
|
||||||
|
Find the maintainer of a package
|
||||||
|
.It Ar manifest
|
||||||
|
Display all files owned by a package
|
||||||
|
.It Ar new
|
||||||
|
Create a boilerplate package
|
||||||
|
.It Ar orphans
|
||||||
|
List orphaned packages
|
||||||
|
.It Ar outdated
|
||||||
|
Check repository for outdated packages
|
||||||
|
.It Ar owns
|
||||||
|
Check which package owns a file
|
||||||
|
.It Ar revdepends
|
||||||
|
Display packages which depend on package
|
||||||
|
.It Ar size
|
||||||
|
Show the size on disk for a package
|
||||||
|
.El
|
||||||
|
.Sh ENVIRONMENT
|
||||||
|
.Bl -tag -width Ds
|
||||||
|
.It Ev KISS_CHK
|
||||||
|
The utility to use for SHA256 checksums.
|
||||||
|
.Pp
|
||||||
|
Valid: openssl, sha256, sha256sum, shasum, digest.
|
||||||
|
Default is the first available in that order.
|
||||||
|
.It Ev KISS_CHOICE
|
||||||
|
Set to
|
||||||
|
.Ql 0
|
||||||
|
to disable the alternatives system and error on any detected file
|
||||||
|
conflicts.
|
||||||
|
.It Ev KISS_COLOR
|
||||||
|
Set to
|
||||||
|
.Ql 0
|
||||||
|
to disable colorful output; otherwise colors are disabled when the
|
||||||
|
utput is not a terminal.
|
||||||
|
.It Ev KISS_COMPRESS
|
||||||
|
Compression method to use for built package tarballs.
|
||||||
|
.Pp
|
||||||
|
Valid: gz (default), bz2, lzma, lz, xz, zst.
|
||||||
|
.It Ev KISS_DEBUG
|
||||||
|
Set to
|
||||||
|
.Ql 1
|
||||||
|
to avoid deleting temporary directories after building packages, for
|
||||||
|
debugging.
|
||||||
|
.It Ev KISS_ELF
|
||||||
|
Which readelf command to use.
|
||||||
|
.Pp
|
||||||
|
Valid: readelf (default), *-readelf, ldd.
|
||||||
|
.It Ev KISS_FORCE
|
||||||
|
Set to
|
||||||
|
.Ql 1
|
||||||
|
to bypass dependency checks and force building/installation/removal
|
||||||
|
of packages.
|
||||||
|
.It Ev KISS_GET
|
||||||
|
Which utility to use when downloading sources.
|
||||||
|
.Pp
|
||||||
|
Valid: aria2c, axel, curl, wget, wget2.
|
||||||
|
Default is the first available in that order.
|
||||||
|
.It Ev KISS_HOOK
|
||||||
|
A colon-separated list of absolute paths to executable files which are run as
|
||||||
|
hooks.
|
||||||
|
.It Ev KISS_KEEPLOG
|
||||||
|
Set to
|
||||||
|
.Ql 1
|
||||||
|
to keep build logs for successful builds as well as failing ones.
|
||||||
|
.It Ev KISS_PATH
|
||||||
|
A colon-separated list of paths to repositories, directories which contain
|
||||||
|
packages.
|
||||||
|
Repositories earlier in the list have a higher priority in the case of a package
|
||||||
|
being found in multiple repos.
|
||||||
|
.It Ev KISS_PID
|
||||||
|
Used to determine the exact name of temporary directories, can be specified for
|
||||||
|
debugging.
|
||||||
|
.It Ev KISS_PROMPT
|
||||||
|
Set to
|
||||||
|
.Ql 0
|
||||||
|
to say
|
||||||
|
.Dq yes
|
||||||
|
and skip all prompts from the package manager.
|
||||||
|
.It Ev KISS_ROOT
|
||||||
|
Where installed packages will go.
|
||||||
|
Can be used to install packages to somewhere other than
|
||||||
|
.Pa / .
|
||||||
|
.It Ev KISS_STRIP
|
||||||
|
Set to
|
||||||
|
.Ql 0
|
||||||
|
to disable stripping package binaries and libraries globally.
|
||||||
|
.It Ev KISS_SU
|
||||||
|
Privilege escalation utility to use.
|
||||||
|
.Pp
|
||||||
|
Valid: ssu, sudo, doas, su, or any other tool compatible with sudo-like
|
||||||
|
arguments.
|
||||||
|
.It Ev KISS_TMPDIR
|
||||||
|
Temporary directory used for builds.
|
||||||
|
Can be set to a tmpfs (often
|
||||||
|
.Pa /tmp
|
||||||
|
for example) so that builds happen in memory
|
||||||
|
and are faster.
|
||||||
|
.El
|
||||||
|
.Sh FILES
|
||||||
|
.Nm
|
||||||
|
does not use any configuration files.
|
||||||
|
Files used in packages are documented in
|
||||||
|
.Xr kiss 5 .
|
||||||
|
.Sh EXIT STATUS
|
||||||
|
.Ex -std
|
||||||
|
.Sh SEE ALSO
|
||||||
|
.Xr kiss 5 ,
|
||||||
|
.Lk https://kisslinux.org/wiki/package-manager
|
||||||
|
.Sh AUTHORS
|
||||||
|
.Nm
|
||||||
|
was created by
|
||||||
|
.An Dylan Araps
|
||||||
|
and the community.
|
147
doc/kiss.5
Normal file
147
doc/kiss.5
Normal file
@ -0,0 +1,147 @@
|
|||||||
|
.Dd December 23, 2022
|
||||||
|
.Dt KISS 5
|
||||||
|
.Os
|
||||||
|
.Sh NAME
|
||||||
|
.Nm kiss
|
||||||
|
.Nd package format
|
||||||
|
.Sh DESCRIPTION
|
||||||
|
KISS packages are comprised of a directory and the series of files contained
|
||||||
|
within.
|
||||||
|
The name of the package is derived from its directory name.
|
||||||
|
The files which comprise the system are as follows:
|
||||||
|
.TS
|
||||||
|
center box tab(|);
|
||||||
|
lb|lb
|
||||||
|
l|l.
|
||||||
|
File | Required
|
||||||
|
_
|
||||||
|
build | yes
|
||||||
|
checksums | no
|
||||||
|
depends | no
|
||||||
|
sources | no
|
||||||
|
version | yes
|
||||||
|
|
||||||
|
pre-remove | no
|
||||||
|
post-install | no
|
||||||
|
.TE
|
||||||
|
.Ss build
|
||||||
|
The
|
||||||
|
.Pa build
|
||||||
|
file is executed in the directory containing the package's extracted
|
||||||
|
sources.
|
||||||
|
Unlike other distributions, a
|
||||||
|
.Ic cd
|
||||||
|
is not needed as sources have their top-level directory components stripped
|
||||||
|
away.
|
||||||
|
.Pp
|
||||||
|
The build file is given two arguments: the destination directory (where
|
||||||
|
artifacts should be installed) and the first field of the package's version file
|
||||||
|
(verbatim).
|
||||||
|
.Pp
|
||||||
|
The build file is given a modified environment containing DESTDIR, KISS_ROOT,
|
||||||
|
GOPATH and generic defaults for toolchain variables (if unset by the user).
|
||||||
|
The toolchain defaults are as follows:
|
||||||
|
.Bd -literal -offset indent
|
||||||
|
AR=ar
|
||||||
|
CC=cc
|
||||||
|
CXX=c++
|
||||||
|
NM=nm
|
||||||
|
RANLIB=ranlib
|
||||||
|
RUSTFLAGS="--remap-path-prefix=$PWD=. $RUSTFLAGS"
|
||||||
|
GOFLAGS="-trimpath -modcacherw $GOFLAGS"
|
||||||
|
.Ed
|
||||||
|
.Ss checksums
|
||||||
|
The
|
||||||
|
.Pa checksums
|
||||||
|
file is generated by the package manager
|
||||||
|
.Ql ( kiss c pkg )
|
||||||
|
and is derived from files listed in the package's
|
||||||
|
.Pa sources
|
||||||
|
file.
|
||||||
|
Directories and git repositories do not require checksums.
|
||||||
|
.Pp
|
||||||
|
Checksum verification can be disabled for a source by replacing its checksum
|
||||||
|
with 'SKIP' in the checksums file.
|
||||||
|
The package manager will notify you when this occurs.
|
||||||
|
.Ss depends
|
||||||
|
The
|
||||||
|
.Pa depends
|
||||||
|
file contains the package's dependencies listed one per line in alphabetical
|
||||||
|
order.
|
||||||
|
Duplicate entries are not supported.
|
||||||
|
The second optional field denotes the dependency type (unset for runtime,
|
||||||
|
.Dq make
|
||||||
|
for compile-time).
|
||||||
|
Lines beginning with
|
||||||
|
.Ql #
|
||||||
|
are comments.
|
||||||
|
.Ss sources
|
||||||
|
The
|
||||||
|
.Pa sources
|
||||||
|
file contains the package's sources one per line.
|
||||||
|
A valid source is a URL to a file, relative path, absolute path or Git
|
||||||
|
repository.
|
||||||
|
The optional second field denotes the relative destination directory.
|
||||||
|
Lines beginning with
|
||||||
|
.Ql #
|
||||||
|
are comments.
|
||||||
|
.Pp
|
||||||
|
Git repositories must be prefixed with
|
||||||
|
.Ql git+ .
|
||||||
|
An optional suffix is supported to checkout a specific branch
|
||||||
|
.Ql ( @BRANCH )
|
||||||
|
or commit
|
||||||
|
.Ql ( #COMMIT ) .
|
||||||
|
All clones are shallow where supported by the remote server.
|
||||||
|
If no suffix is used, master is cloned.
|
||||||
|
.Pp
|
||||||
|
The following markers can be used to substitute version information.
|
||||||
|
These are replaced at runtime with their respective values.
|
||||||
|
Literal markers can be escaped by prepending a backslash.
|
||||||
|
.TS
|
||||||
|
center box tab(|);
|
||||||
|
l|l.
|
||||||
|
VERSION | The first field of the version file verbatim.
|
||||||
|
RELEASE | The second field of the version file verbatim.
|
||||||
|
MAJOR | The first component of VERSION split on .-_+
|
||||||
|
MINOR | The second component of VERSION split on .-_+
|
||||||
|
PATCH | The third component of VERSION split on .-_+
|
||||||
|
IDENT | All other components.
|
||||||
|
PACKAGE | The name of the package.
|
||||||
|
.TE
|
||||||
|
.Ss version
|
||||||
|
The
|
||||||
|
.Pa version
|
||||||
|
file is a single line split into two mandatory fields.
|
||||||
|
The first field is the package's version and the second field the version of the
|
||||||
|
repository files themselves.
|
||||||
|
.Pp
|
||||||
|
If the package follows its upstream release schedule, the first field should
|
||||||
|
match the upstream version number.
|
||||||
|
If the source is a Git repository, the version should be set to
|
||||||
|
.Ql git .
|
||||||
|
If a specific git commit is used, the version number should match accordingly.
|
||||||
|
.Ss pre-remove
|
||||||
|
The
|
||||||
|
.Pa pre-remove
|
||||||
|
file is executed before removal of the package.
|
||||||
|
This file should be used to perform any required pre-removal steps or to display
|
||||||
|
notices.
|
||||||
|
.Ss post-install
|
||||||
|
The
|
||||||
|
.Pa post-install
|
||||||
|
file is executed after installation of the package.
|
||||||
|
This file
|
||||||
|
should be used to perform any required post-install steps or to display notices.
|
||||||
|
.Sh SEE ALSO
|
||||||
|
.Xr kiss 1 ,
|
||||||
|
.Lk https://kisslinux.org/wiki/package-system
|
||||||
|
.Sh HISTORY
|
||||||
|
Originally, SHA256 was used as the checksum algorithm.
|
||||||
|
In September 2022, the checksums were switched to use BLAKE3 for speed
|
||||||
|
improvements.
|
||||||
|
.Sh AUTHORS
|
||||||
|
.Nm
|
||||||
|
was created by
|
||||||
|
.An Dylan Araps
|
||||||
|
and the community.
|
Loading…
Reference in New Issue
Block a user