Pacstall v1.3 Amaranth
Users
In short
Features
Additions
- You can edit a
pacscript
during install. - Added
bash
/zsh
/fish
shell tab completion. You need to runsudo pacstall -U
twice in order to get thebash
/zsh
/fish
shell completions - Pacstall scripts can install other pacstall scripts as dependencies
Changes
-S
flag uses ripgrep (if installed on the system), then grep to search for packages for
better scriptability-U <githubusername> <branch>
can be used to update pacstall to a specific repo and
branch. Will still default topacstall master
if no arguments are given
Bugs
Bug Fixes
- Fixed issue with
-Qi
that didn't show dependencies and build dependencies - Added guards to rm commands that would clutter output otherwise
- Fixed quote issues
- Performance fixes, Code Quality upgrades and other misc changes/bugfixes.
Known bugs
- Pacstall isn't printing help if no flags are given #27
In detail
Features
Editing scripts
The first thing pacstall will try to do is edit your script with $PACSTALL_EDITOR
, then it will try to edit with $VISUAL
, then $EDITOR
, and then fall back to sensible-editor
(the default system editor)
-U
You can (after updating), run:
sudo pacstall -U <githubusername> <branch>
This will update your script to that repo/branch. An example would be sudo pacstall -U wizard-28 master
to update to wizard-28
's fork. If you leave out branch
, it will default to master
, and if you just run sudo pacstall -U
, it will default to pacstall
and master
Known bugs
Pacstall isn't printing help if no flags are given
Basically what the title says, this is a low severity bug, we hoping to fix it by next release
To mitigate this temporarily you can run:
pacstall -h
for more information click the this issue link #27
Developers, Developers, Developers...
In short
Additions
- A
pacdeps=()
array was added which enables the pacscripts to add other pacscripts as dependency. - A
pkgver()
function was added which can dynamically modify the version of your pacscripts.
Changes
- There were some code refactors.
- Major Code Quality uplift so minor changes thought the whole repo.
- An automated labeling workflow was added.
In detail
pacdeps=()
In your pacscripts, you can add the array pacdeps=()
, and fill it in with pacstall packages to install those as dependencies.
pkgver()
First you need to remember that sourcing a file goes line by line, so if you have a variable referencing another variable that hasn't been sourced yet, it won't work.
pkgver () {
git ls-remote <url> <branch> | cut -f1 # Returns the latest commit hash from remote
}
version="$(pkgver)"
This function is similar to the PKGBUILD function of the same name, but instead this doesn't execute after the git repo is cloned, so it enables update capabilities for -git
pacscripts, which the AUR can't.
Look here for an example
Labeler
Title your PR/issues like this from now on
[<label1>] [<label2>].... <Title>
Of course you can skip [<label2>]
and others if they don't apply to your PR/issue
This will allow the github action to automatically assign the right people, and label your PR/issue.