NOTE This project is being migrated to Rust. While the bash version is still maintained, it will eventually™ be superceded by the rust version
A project started by Fuseteam, inspired by Pacstall, Nix and nyaa
Crackle is a client which allows apt users to install stuff in their home directory, following the XDG Base Directory specification.
The project is currently a bunch of bash scripts, as such installation relatively simple~
- Download the code
- open a terminal
- run
unzip Downloads/crackle.zip -d crackle
- run
crackle/crackle setup
- ???
- profit
To run the program, specify the operation, and the package to act on.
crackle
install $PKG
download $PKG
crack $PKG
search $PKG
show $PKG
clean
setup
debug
nuke
Essentially, what each command does is what you would expect from using apt as usual, but with amendments for installing things locally, instead of system-wide.
Crackle specific commands:
setup
: Automagically configures and installs/upgrades crackledebug
: Shows some debugging information. Doesn't do any changes to the system.crack
: this will extract the package$PKG
and it's dependencies to$HOME/packages/$PKG
for easy inspection, usefull to see the file tree or navigate through the various files associated with the package or its dependenciesclick
: this will build a click package from the downloaded deb packagesreinstall
: this is equivalent toapt install --reinstall $PKG
nuke
: Automagically remove everything crackle related from the system*
*
except the references to it in ~/.bash_completion
. all those references are documented in crackle.conf
the following are the limitations of crackle:
- currently crackle doesn't account for desktop files i.e. gui applications
- crackle doesn't work on systems with a readwrite rootfs
- currently crackle doesn't know how to remove packages
- crackle doesn't know how to deal with all packages, so it may be hit or miss please report packages that don't work on gitlab
Support, question and suggestions for crackle can be filed on GitLab. There is also a discussion & support group on Telegram
Crackle should considered Alpha, packages may or may not work and crackle is unable to remove packages, it can only remove itself and all the packages it installed with crackle nuke
.
for 0.3.x considerations are being made to restructure how crackle installs packages to facililate package removal. however this update may require the user to run crackle nuke first
for now the plan for 0.2.6 is to deprecate cracklerc to make the experience much smoother, to handle desktop files and other smaller bug fixes that don't currently comes to mind
The installed packages will be found under ~/$HOME/.local/share/crackle
, modify the runtime configuration to change this, or pass in the $CRACKLERC
variable to override.
Note that the configuration location for packages by default is in $XDG_CONFIG_HOME/crackle
, as expected. The same goes for this package, found under $XDG_CONFIG_HOME/.config/crackle/cracklerc