forked from kiss-community/repo
51 lines
2.0 KiB
Markdown
51 lines
2.0 KiB
Markdown
# KISS Package System
|
|
|
|
See: https://kissx.github.io/pages/package-system/
|
|
|
|
## Index
|
|
|
|
<!-- vim-markdown-toc GFM -->
|
|
|
|
* [Adding packages to this repository](#adding-packages-to-this-repository)
|
|
* [Committing changes](#committing-changes)
|
|
* [Pull requests](#pull-requests)
|
|
* [Linting](#linting)
|
|
|
|
<!-- vim-markdown-toc -->
|
|
|
|
## Adding packages to this repository
|
|
|
|
Unless for a good reason, new packages go in `public`. The `core`, `extra` and `xorg` repositories are updated on a case by case basis.
|
|
|
|
- `core`: Contains just enough to rebuild itself and any additional packages.
|
|
- `extra`: Contains essential packages which do not belong in `core`.
|
|
- `xorg`: Contains everything `xorg` related for a working `xorg-server`.
|
|
- `public`: Everything else.
|
|
|
|
When a package is added to `public` it is assumed that the committer is now the maintainer of said package. The other three repositories are maintained by the KISS developers themselves.
|
|
|
|
|
|
## Committing changes
|
|
|
|
One package per commit unless the packages are very closely related (`linux` and `linux-headers`).
|
|
|
|
Commit rules:
|
|
|
|
* For new packages: `<package>: new package at <version>`
|
|
* For updating an existing package: `<package>: update to <version>`, `<package>: bump to <version>` is also acceptable.
|
|
* Any other changes: `<package>: <changes>`
|
|
* Merges: GitHub's default format is acceptable, or just `Merge #<PR number>` should suffice.
|
|
* Misc: We leave that to the discretion of the author and/or committer.
|
|
|
|
|
|
## Pull requests
|
|
|
|
Ensure that the package builds successfully on your system before creating a pull request. If for some reason it **does not**, open an issue if assistance is needed.
|
|
|
|
Pull requests should only contain the new package and any dependencies which do not yet exist in any of the repositories.
|
|
|
|
|
|
## Linting
|
|
|
|
All package `build` and `post-install` scripts are subject to checks using `shellcheck`. Packages must pass the linter to be accepted into the repository. Exceptions can be made using `shellcheck disable=SCXXXX` with good reason.
|