diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2017-09-18 15:33:54 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2017-09-18 15:33:54 -0300 |
commit | 06ecc56c337c0de3d036dafc1431b7638ad2b908 (patch) | |
tree | 9bc883a3988bfe9b5ad425119f685abb7c5a6336 /README.md | |
download | stowpkg-06ecc56c337c0de3d036dafc1431b7638ad2b908.tar.gz stowpkg-06ecc56c337c0de3d036dafc1431b7638ad2b908.tar.bz2 |
Initial import
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..e74f815 --- /dev/null +++ b/README.md @@ -0,0 +1,103 @@ +Stowpkg: ports system based on GNU Stow +======================================= + +A non-conflicting Unix package manager built atop GNU Stow. + +Features +-------- + +* Non-conflicting with any other package management in use (distro-spefic, npm, pip, etc). +* Multi-target support: you can keep may isolated and independent software trees. +* Multi-distro support: works for any GNU/Linux and possible any BSD-variant. +* Repository signature verification using GnuPG and signed git commits. +* Small enough so everybody can learn how a package manager works. + +Coming features +--------------- + +* Automatic patch application. +* Source code verification using multiple methods (commit hash, checksums, OpenPGP). + +Installation +------------ + +On a Debian-like system: + + sudo apt install stow build-essential + +Usage +----- + + stowpkg search # list packages available on ports + stowpkg install <package> # install packages from source + +Coming usage +------------ + + stowpkg list # list packages installed + stowpkg remove <package> # remove packages + stowpkg purge <package> # purge packages + stowpkg update # update ports repository + stowpkg upgrade [package] # upgrade packages + stowpkg upstream <package> # check packages versions at upstream + stowpkg build # simple package builder (./configure && make && make install) + +Running installed applications +------------------------------ + +Make sure to include stowpkg package tree into your `PATH`, `MANPATH`, `LD_LIBRARY_PATH`, etc. + +Params +------ + +Passe using environment variables: + +* `BASE`: defaults `<stowpkg-repo>/tree/<architecture>`, but can be configured to anything like + `/usr/local` with corresponding packages installed `/usr/local/stowpkg`. + +Configuration +------------- + +Use `~/.config/stowpkg` do put any default parameters. + +Ports layout +------------ + +Check the repo for examples :) + +Repository layout +----------------- + +Starting from `$BASE` (like `/usr/local`) we have: + + {bin,lib,man,share,etc,src}: usual Unix paths + stow + package_name-VERSION + +Further development +------------------- + +* Per-architecture binary package support using git-annex and GnuPG signatures, including: + + stowpkg pack <package> # pack an installed package + stowpkg fetch <package> # fetch package from the repo + +What is does +------------ + +If you want to do it manually: + + sudo apt install <luakit-depencies> + git clone https://github.com/luakit/luakit + cd luakit + make PREFIX=/usr/local/stow/luakit + sudo make PREFIX=/usr/local/stow/luakit install + cd /usr/local/stow/ + sudo stow luakit + +References +---------- + +* [GNU Stow Docs](http://www.gnu.org/software/stow/manual/html_node/index.html). +* [Using GNU Stow to manage source installs](http://blog.danieroux.com/2005/08/07/using-gnu-stow-to-manage-source-installs/). +* [Get rid of stowaway packages with GNU Stow](https://www.linux.com/news/get-rid-stowaway-packages-gnu-stow). |