kiss/README.md

84 lines
2.5 KiB
Markdown
Raw Normal View History

2019-06-13 14:49:05 +00:00
# kiss
2019-09-11 06:00:33 +00:00
Tiny and straightforward package manager for KISS written in POSIX `sh`.
2019-06-13 17:22:08 +00:00
2020-03-22 14:20:51 +00:00
- Only 600~ lines of POSIX `sh` (See [cloc](#cloc)).
2019-09-11 06:00:33 +00:00
- Runtime dependency detection.
- Incremental package installation.
2019-09-11 06:02:24 +00:00
- Fast dependency solver.
- File conflict detection.
2020-01-29 08:26:31 +00:00
- Package alternatives system.
2019-09-11 06:00:33 +00:00
- Binary stripping.
- `shellcheck` compliant.
2019-06-13 17:22:08 +00:00
2020-02-11 10:41:41 +00:00
## `kiss` Guidestones
2020-02-14 11:47:23 +00:00
Read: https://k1ss.org/guidestones.txt
2020-02-11 10:41:41 +00:00
2019-06-13 17:32:46 +00:00
## Usage
```sh
2020-01-29 08:19:56 +00:00
-> kiss [a|b|c|i|l|r|s|u|v] [pkg] [pkg] [pkg]
-> alternatives: List and swap to alternatives
-> build: Build a package
-> checksum: Generate checksums
-> install: Install a package
-> list: List installed packages
-> remove: Remove a package
-> search: Search for a package
-> update: Check for updates
-> version: Package manager version
2019-06-13 17:32:46 +00:00
```
2019-08-13 09:22:12 +00:00
2020-01-29 10:21:20 +00:00
## Index
<!-- vim-markdown-toc GFM -->
* [Package format](#package-format)
* [Extending the package manager](#extending-the-package-manager)
2020-03-22 14:20:51 +00:00
* [cloc](#cloc)
2020-01-29 10:21:20 +00:00
<!-- vim-markdown-toc -->
2019-09-11 06:00:33 +00:00
## Package format
2020-03-11 14:52:48 +00:00
See: <https://k1ss.org/package-system>
2019-09-11 06:00:33 +00:00
2019-10-07 13:31:26 +00:00
## Extending the package manager
2020-02-19 09:53:03 +00:00
The `contrib` directory contains a set of simple scripts to extend the package manager. These are just simple and stupid automations which parse the package format.
2019-10-30 10:51:48 +00:00
2020-03-12 15:00:16 +00:00
- `kiss-cargo-urlgen`: Generate sources for rust packages.
2020-02-19 09:53:03 +00:00
- `kiss-chbuild`: Spawn a throwaway chroot.
2019-10-30 10:51:48 +00:00
- `kiss-chroot`: Enter a KISS `chroot`.
- `kiss-depends-finder`: Find missing dependencies by parsing 'ldd'.
- `kiss-depends`: Display a package's dependencies.
- `kiss-export`: Turn an installed package into a KISS tarball.
2020-03-13 13:45:07 +00:00
- `kiss-fork`: Copy a package's repository files into the current directory.
- `kiss-link`: Link a repository file to another repository.
2019-10-30 10:51:48 +00:00
- `kiss-manifest-tree`: Display all files as tree owned by a package.
- `kiss-manifest`: Display all files owned by a package.
- `kiss-maintainer`: Display the package maintainers.
2020-02-19 09:53:03 +00:00
- `kiss-new`: Create a boilerplate package.
2019-10-30 10:51:48 +00:00
- `kiss-orphans`: List orphaned packages.
2020-03-03 22:49:41 +00:00
- `kiss-outdated`: List outdated packages based on Repology versions.
2019-10-30 10:51:48 +00:00
- `kiss-owns`: Check which package owns a file.
2020-02-19 09:53:03 +00:00
- `kiss-repodepends`: Display a package's original dependencies.
- `kiss-reset`: Reset the system to the base.
2019-10-30 10:51:48 +00:00
- `kiss-revdepends`: Display packages which depend on package.
- `kiss-size`: Show the size on disk for an installed package.
2020-02-19 09:53:03 +00:00
2020-03-22 14:20:51 +00:00
## cloc
```
+---------------------------------------+
| Language files blank comment code |
|---------------------------------------|
2020-03-28 08:18:47 +00:00
| Shell 1 271 391 663 |
2020-03-22 14:20:51 +00:00
+---------------------------------------+
```