diff --git a/README.md b/README.md index 14ecea8..eda2173 100644 --- a/README.md +++ b/README.md @@ -2,76 +2,4 @@ Tiny and straightforward package manager for KISS written in POSIX `sh`. -- Less than 1000 lines of POSIX `sh` (excluding blank lines and comments). -- Highly portable (will run in any POSIX compliant environment). -- Runtime dependency detection. -- Incremental package installation. -- Fast dependency solver. -- File conflict detection. -- Package alternatives system. -- 3-way handshake for /etc/ configuration files. -- Binary stripping. -- `shellcheck` compliant. - - -## Usage - -```sh --> kiss [a|b|c|i|l|r|s|u|v] [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 -``` - -## Dependencies / Portability - -| dependency | why | mandatory? | -| --------------- | ---------------------------- | ----------------- | -| POSIX utilities | Used throughout | Yes | -| `git` | Repositories and git sources | Yes | -| `gnupg1` or `gnupg2` | Repository signing | No (optional) | -| `curl` | Source downloads | Yes | -| `sha256sum`, `shasum`, `sha256` or `openssl` | Checksum verification | Yes | -| `tar` | Tarball creation/extraction | Yes | -| `bzip2` | Compression method. | Yes (widely used) | -| `xz` | Compression method. | Yes (widely used) | -| `gzip` | Compression method. | Yes (widely used) | -| `zstd` | Compression method. | No (rarely used) | -| `lzma` | Compression method. | No (rarely used) | -| `lzip` | Compression method. | No (rarely used) | -| `unzip` | Source type. | No (rarely used) | -| `su`, `sudo` or `doas` | Privilege escalation. | No (optional) | -| `ldd` | Automatic dependency fixer. | No (optional) | -| `readelf` and `strip` | Binary stripping | No (optional) | - - -## Package format - -See: - - -## Extending the package manager - -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. - -- `kiss-chbuild`: Spawn a throwaway chroot. -- `kiss-chroot`: Enter a KISS `chroot`. -- `kiss-depends`: Display a package's dependencies. -- `kiss-export`: Turn an installed package into a KISS tarball. -- `kiss-fork`: Copy a package's repository files into the current directory. -- `kiss-link`: Link a repository file to another repository. -- `kiss-manifest`: Display all files owned by a package. -- `kiss-maintainer`: Display the package maintainers. -- `kiss-new`: Create a boilerplate package. -- `kiss-orphans`: List orphaned packages. -- `kiss-outdated`: List outdated packages based on Repology versions. -- `kiss-owns`: Check which package owns a file. -- `kiss-reset`: Reset the system to the base. -- `kiss-revdepends`: Display packages which depend on package. -- `kiss-size`: Show the size on disk for an installed package. +Documentation: https://k1ss.org/package-manager