A modern and extensible package manager for Linux*/Unix
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
appctl is a modern and extensible project manager and its can support any type of package format and mode of operation (like installation, compilation, upgradation) can be added in forms of modules.
librlxpkg - is a avaliable module to provide support for rlxos recipe files. Its the complete implemenation and can install, compile, search and remove any type
appctl primarly targets rlxos (releax os) but can be easily ported to any linux/unix system even without code modifications
appctl mainly uses standard POSIX libraries, but for complete functionality need below files.
appctl can work on any system without conflicting to you existing system. Installation path of both system and user package can be configured through /etc/appctl.conf.
While performing any task like installation, uninstallation or upgradation etc. appctl search for modules specified in /etc/appctl.conf or include/default.hh. then appctl pass app-id & args to every module in order if module support that app-id then that module will be used to perform tasks.
appctl is pre install in rlxos but can compile in on any linux/unix system. To perform compilation you need to install prerequisites libraries
- libcurl, libressl/openssl
sudo pacman -Syu curl openssl
- libapp - backend library for appctl
project build libapp
- appctl - cmdline frontend for appctl
project build libappctl
- librlxpkg - module implementation for appctl
project build librlxpkg
sudo project do install
appctl use common and standard command line arguments for performing operations, like
appctl install <app-name>
appctl-0.1.0 : rlxos package manager tool
Usage: appctl [options]
Options:
install [app-name] install specified application from app-id
info [app-name] print information of <app>
list-files [app-name] list content of install <app>
cal-dep [app-name] calculate required dependencies of <app>
verify-config [section.variable] print configuration file
remove [app-name] remove app from root directory
download [<url> <file>] download file specified
sync [] sync data from modules
gen-hash [file] generate hash sum of input file
For more examples, please refer to the Documentation
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b 0.1.0
) - Commit your Changes (
git commit -m '[my-id] my awesome Feature'
) - Push to the Branch (
git push origin 0.1.0
) - Open a Pull Request
Distributed under the GPL3 License. See license
for more information.
Manjeet Singh - @releaxos - itsmanjeet@releax.in
Join our discord server for any query
Project Link: https://github.com/rlxos/appctl