pacstall

An AUR-inspired package manager for Ubuntu

GPL-3.0 License

Downloads
1K
Stars
1.2K
Committers
37

Bot releases are hidden (Show)

pacstall - 3.12.1 Diantha

Published by Elsie19 over 1 year ago

Pacstall v3.12.1 Diantha

This update is a bugfix update for bugs present in 3.12.0 Lily found and reported by the community. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • Prevent already installed build_depends during removal by @Henryws (#885)
  • Use raw ascii code instead of tput in postscripts by @Henryws (#887)
  • Use $PACKAGE instead of $2 for trap_ctrlc() by @Henryws (#889)

Performance changes

  • Replace tr with pure bash by @Henryws (#890)
  • Remove tput entirely by @Henryws (#893)

Changes

  • Combine multiple ... ]] && [[ ... into one check by @Henryws (#886, #891)
  • Remove NORMAL and replace with NC by @Henryws (#892)
name="pacstall"
version="3.12.1"
description="An AUR-inspired package manager for Ubuntu"
homepage='https://pacstall.dev'
depends=("bash" "curl" "wget" "unzip" "build-essential" "sensible-utils" "git")
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}

pacstall - 3.12.0 Lily

Published by Elsie19 over 1 year ago

Pacstall v3.12.0 Lily

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Convert depends, build_depends, breaks and replace into arrays by @Henryws (#876, #882)

Bug fixes

  • Lowercase URL checker by @Henryws (#875)

Changes

  • Change [[ -eq ]] to (( )) by @Henryws (#879)

Performance changes

  • Replace awk with sort -u in completions by @Henryws (#880, 73034dd2)

How to use new features

Variables to Arrays

From now on, depends, build_depends, breaks and replace should be written as arrays. The old variable way is still supported, but encouraged to use the array syntax.

# Old
depends="foo bar"
build_depends="baz bizzle"
breaks="fooplus barplus"
replace="foo bar"
# New
depends=("foo" "bar")
build_depends=("baz" "bizzle")
breaks=("fooplus" "barplus")
replace=("foo" "bar")

name="pacstall"
version="3.12.0"
description="An AUR-inspired package manager for Ubuntu"
homepage='https://pacstall.dev'
depends=("bash" "curl" "wget" "unzip" "build-essential" "sensible-utils" "git")
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}

pacstall - 3.11.1 Thulian

Published by Elsie19 over 1 year ago

Pacstall v3.11.1 Thulian

This update is a bugfix update for bugs present in 3.11.0 Peachpuff found and reported by the community. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • Do not remove file if it's PACSTALL_PAYLOAD by @wizard-28 (#872)
name="pacstall"
version="3.11.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.11.0 Peachpuff

Published by Elsie19 over 1 year ago

Pacstall v3.11.0 Peachpuff

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Add backup array by @Henryws (#855)
  • Allow long descriptions by @Henryws (#860)

Changes

  • Make prompt_optdepends more explicit by @Henryws (#861)

How to use new features

backup

The backup array is used to declare configuration files outside of /etc (they are automatically included by dpkg). The syntax is the same as it's PKGBUILD counterpart with one special exception.

backup=(
  'usr/share/pac.conf'
  'r:usr/share/pacconfig.conf'
)

The r: flag means that the file must be deleted on the next upgrade, which could be used for outdated configuration files^1

Long descriptions

Simply make a multiline string like so:

description="Shows Linux System Information with Distribution Logo
Neofetch is a cross-platform and easy-to-use system information
command line script that collects your Linux system information
and display it on the terminal next to an image, it could be your
distributions logo or any ascii art of your choice."

Pacstall will automatically make a deb control file formatted entry as a long description. Blank lines are allowed.


name="pacstall"
version="3.11.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}

pacstall - 3.10.0 Elsie

Published by Elsie19 over 1 year ago

Pacstall v3.10.0 Elsie

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Add homepage property by @Henryws (#853)

Bug fixes

  • Unquote return statement on version checker in upgrade.sh by @wizard-28 (#857)

Performance changes

  • Remove grep entirely by @Henryws (#854)
  • Remove basename entirely by @Henryws (#856)

How to use new features

homepage

In your Pacscripts, you can specify a homepage variable like so:

homepage='https://www.mozilla.org/en-US/firefox'

name="pacstall"
version="3.10.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}

pacstall - 3.9.0 Denim

Published by Elsie19 over 1 year ago

Pacstall v3.9.0 Denim

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Add PACSTALL_PAYLOAD variable by @wizard-28 (#838)
  • Local update support by @Henryws (#840)
  • Add preinst function by @Henryws (#842)

Bug fixes

  • Add pacdeps to Depends implicitly by @Henryws (#839, #846)
  • Multiple ranges in select_options works again by @Henryws (#841)
  • Backwards ranges disallowed by @Henryws (#849)
  • Same number ranges disallowed by @Henryws (#850)
  • Explicitly installed optdepends are Depends by @Henryws (#843)
  • Set CARCH before sourcing by @Henryws (#848)

Changes

  • Mapfile some split variables instead of relying on bash splitting by @Henryws (#841)
  • curl instead of wget is used inside update.sh by @Henryws (#840)
  • Localize more variables by @Henryws (#845)

Performance changes

  • Use native bash glob instead of grep, use cut instead of awk by @Henryws (#844)

How to use new features

PACSTALL_PAYLOAD

Warning
This feature only pertains to pacup, and should not be used unless you know what you're doing

You can pass an already downloaded url to pacstall to skip the redownloading of said file with the environmental variable PACSTALL_PAYLOAD:

PACSTALL_PAYLOAD=$PWD/neofetch-7.1.0.zip pacstall -I neofetch

Local updates

When developing Pacstall, devs may wish to install their local copy of the pacstall repo rather than wait for a CDN to update before they can, so, inside a cloned pacstall repository, run pacstall -U .. Note that you must pass the input ., and not a path. If you wish to keep updating on that repo, you must continue to run pacstall -U . as the repo retention is set to pacstall:master.

preinst function

Note
This is not run by Pacstall. This will be run while the deb is unpacking.

Some Pacscript maintainers may wish to add a function to be run before the deb is installed, which can now be accomplished with the preinst function. It is written the same way as postinst and removescript.


name="pacstall"
version="3.9.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}

pacstall - 3.8.1 Granola

Published by Elsie19 over 1 year ago

Pacstall v3.8.1 Granola

This update is a bugfix update for bugs present in 3.8.0 Citrine found and reported by the community. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • Append to logfile instead of overwriting by @Henryws (#830)
  • Remove pacdep SRCDIR with sudo by @Henryws (#833)
  • Move pacfile to /tmp by @Henryws (#834)
name="pacstall"
version="3.8.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.8.0 Citrine

Published by Elsie19 over 1 year ago

Pacstall v3.8.0 Citrine

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Users

Features

  • Show package name at beginning and end of install by @Henryws (#815)
  • Allow updating with : delimiter by @D-Brox (#818)
  • Show hashes on mismatch by @Henryws (#821)

Developers, Developers, Developers...

Features

Everything from Users.

Bug fixes

  • Remove SRCDIR at the end of install, not every package install by @Henryws (#823)
  • Logs are no longer user writable by @Henryws (#825)

Removals

  • Running of hash -r by @Henryws (#826)

Changes

  • Replace /tmp/pacstall-up-{list,urls,print} with mktemp by @Henryws (#816)
  • Refactor hashcheck to remove sed command, quote variables by @Henryws (#819)
  • SRCDIR is created as the user, not with sudo by @Henryws (#824)

How to use new features

: delimiter

When updating to certain repos/branches, you can replace the space with a :, however both styles will be allowed:

# Old
$ pacstall -U pacstall develop

# Alternative
$ pacstall -U pacstall:develop

Hash mismatch

Image

Image showing hash mismatch

name="pacstall"
version="3.8.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.7.1 Evergreen

Published by Elsie19 over 1 year ago

Pacstall v3.7.1 Evergreen

This update is a bugfix update for bugs present in 3.7.0 Malachite found and reported by the community. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • Always remake SRCDIR during upgrades by @Henryws (#809)

Changes

  • Replace grep+cut+awk with awk by @D-Brox (#808)
name="pacstall"
version="3.7.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.7.0 Malachite

Published by Elsie19 over 1 year ago

Pacstall v3.7.0 Malachite

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Users

Features

  • NO_COLOR support by @Henryws (#803)

Developers, Developers, Developers...

Features

Everything from Users

Changes

  • Deprecate all in favor of any in arch by @Henryws (#804)

Bug fixes

  • Remove /tmp/pacstall after cleanup by @Henryws (#805)
name="pacstall"
version="3.7.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.6.1 Permafrost

Published by Elsie19 over 1 year ago

Pacstall v3.6.1 Permafrost

This update is a hotfix update for bugs present in 3.6.0 Arctic found and reported by the community. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • any -> all, export $CARCH by @Henryws (#800)
name="pacstall"
version="3.6.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.6.0 Arctic

Published by Elsie19 over 1 year ago


Pacstall v3.6.0 Arctic

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 3.0.0 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Added arch array by @Henryws (#793)

Bug fixes

  • Remove tmp pacdep file after completion by @Henryws (#795)
  • Unset pkgver when checking compare_remote_version by @Henryws (#796)

Performance changes

  • Use native find and replace functionality in bash instead of tr by @Henryws (#794)

How to use new features

arch array

If you want to allow installation on certain architectures, you can set the arch array to any architecture supported by dpkg --print-architecture:

arch=('amd64') # Will work **only** on `amd64` platforms
arch=('arm64') # Will work **only** on `arm64` platforms
arch=('amd64') # Will work **only** on `amd64` platforms
arch=('amd64' 'arm64') # Will work **only** on `amd64` *and* `arm64` platforms

If you want to allow installation on any architecture, then don't include arch, or specify arch=('all') to be explicit. The variable CARCH is now available to Pacscripts to use, for instance if there are different downloads for different architectures:

...
case "${CARCH}" in
    amd64)
        url="https://foo.com/x86_64/fizzbuzz.tar.gz"
        sha256sum="..."
        ;;
    arm64)
        url="https://foo.com/arm64/fizzbuzz.tar.gz"
       sha256sum="..."
       ;;
    *)
       echo -e "This pacscript does not work on ${CARCH}"
       exit 1
       ;;
esac

name="pacstall"
version="3.6.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.5.0 Cardinal

Published by Elsie19 over 1 year ago

Pacstall v3.5.0 Cardinal

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Added quiet-wget to PACSTALL_DOWNLOADER by @Henryws (#786)

Bug fixes

  • Unset every pacscript variable by @Henryws (#790)

name="pacstall"
version="3.5.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/${version}.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.4.0 Hibiscus

Published by Elsie19 over 1 year ago

Pacstall v3.4.0 Hibiscus

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • PACSTALL_DOWNLOADER variable to force set downloading tool by @Henryws (#780)

Bug fixes

  • Show size on -Qi and fix showing $pkgdir by @Henryws (#778)
  • Mark deb pacdeps as auto by @Henryws (#779)

Changes

  • Use dpkg-query instead of dpkg -s in query-info.sh by @Henryws (#777)

How to use new features

PACSTALL_DOWNLOADER variable

If you wish to override the downloading tool used by Pacstall, you can set the PACSTALL_DOWNLOADER variable to either axel, wget, or curl like so:

PACSTALL_DOWNLOADER=axel pacstall -I emacs
#-------------#
export PACSTALL_DOWNLOADER=wget
pacstall -I emacs
#-------------#
PACSTALL_DOWNLOADER=curl pacstall -I emacs
name="pacstall"
version="3.4.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/3.4.0.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.3.1 Tyrian

Published by Elsie19 almost 2 years ago

Pacstall v3.3.1 Tyrian

This update is a hotfix update for bugs present in 3.3.0 Iris found and reported by the community. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • eval ~$USER by @Henryws, reported by @Qussayyon (#774)
name="pacstall"
version="3.3.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.3.0 Iris

Published by Elsie19 almost 2 years ago

Pacstall v3.3.0 Iris

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Changes

  • Change all references from pwd to $PWD by @Henryws (#770)

Bug fixes

  • Quote build_depends array internally by @Henryws (#768)
  • Always show missing repo optdepends by @Henryws (#772)
  • Set homedir using ~$USER bashism instead of /home/$USER by @Henryws (#769)
    • This allows for non-standard home directories to be used.

Features

  • Allow buildtime optional dependencies by @Henryws (#767)
    • This also fixes optional dependencies being added to Depends and some not installed being added to Suggests. They are all added to Suggests now.

How to use new features

Buildtime optional dependencies

Pacstall previously installed optional dependencies along with the created deb, leading to only optional dependencies that could be used after a package compilation working. Now you can specify any buildtime dependencies in optdepends and they will be installed before the compilation/install.

Note
You may still have to check what packages are installed if the compilation requires passing flags to a build script to enable said features.


name="pacstall"
version="3.3.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.2.0 Jade

Published by Elsie19 almost 2 years ago

Pacstall v3.2.0 Jade

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Users

Features

  • Allow overriding of nproc during build by @Henryws (#756)

Developers, Developers, Developers...

Bug fixes

  • Remove instead of purge by @Henryws (#753)
  • Exit instead of returning on failed hashcheck, remove deb bypass by @Henryws (#754)
  • Print warning for dangling PPAs after package is removed by @Henryws (#760)

Other

  • Removal of the -Il flag deprecation notice by @Henryws (#761)
  • Switch -V package version checker to use metadata file by @Henryws (#764)

How to use new features

PACSTALL_BUILD_CORES variable

If you wish to force a Pacscript utilizing the nproc command to build with a different amount of cores, you may specify the PACSTALL_BUILD_CORES variable like this:

PACSTALL_BUILD_CORES=3 pacstall -I emacs
# Or
export PACSTALL_BUILD_CORES=3
pacstall -I emacs

name="pacstall"
version="3.2.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.1.1 Coconut

Published by Elsie19 almost 2 years ago

Pacstall v3.1.1 Coconut

This update is a hotfix update for bugs present in 3.1.0 Pearl found and reported by the community. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • Mark pacdeps as auto installed by @Henryws (#748)
  • Use exec with clean_logdir by @Henryws (#750)
name="pacstall"
version="3.1.1"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.1.0 Pearl

Published by Elsie19 almost 2 years ago

Pacstall v3.1.0 Pearl

This update is a quality of life update focusing on important bug fixes and adding requested features. Users can update from Pacstall 1.6 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Features

  • Pacstall function output is now logged to files by @Henryws (#721, #734)
  • Added epoch variable by @Henryws (#720, #740)
  • Added incompatible array by @Henryws (#717)
  • Debs built with -B are compressed with xz by @Henryws (#729)

Bug Fixes

  • Bypass PACSTALL_EDITOR if editor cannot be found by @Henryws (#708)
  • Export DEBIAN_FRONTEND as noninteractive on -P flag by @Henryws (#713)
  • Use gives before name when pinning package by @Henryws (#728)
  • Figure out what gives is if it does not exist on Deb packages by @Henryws (#739)
  • Skip upgrade for git package if 0$version is the same as $remotever without the leading 0 by @Henryws (#742)
  • Subshell upgrade checks and add wait to prevent some upgrades from failing to show by @Henryws (#746)

Internal changes

  • Remove some grep calls with bash comparisons by @Henryws (#709)

How to use new features

epoch variable

In your Pacscripts, if a package must forcefully be downgraded, you should include the variable epoch="num" in your script. If left out, Pacstall will not take it into account during the version generation. If it is included, the version will end up looking like this: $epoch:$version. An example would be if you had the version 1.0.0, however an issue required you to force downgrade, you would specify epoch="1", version="0.9.0", and Pacstall will force downgrade. Use this feature sparingly.

incompatible array

This array is used to prevent certain distros and versions from being able to run your script. This could be used for a variety of reasons, but the most common are missing or outdated dependencies on those distros (maybe make a Pacscript for those!). You may specify a glob (*) for a catch all selection, or the full name. Codenames and version numbers are valid. Using a glob for both sides (*:*) is invalid. The array takes a form like this:

# Disallow on Debian Stretch, any Ubuntu version, anything with the codename `jammy`, and anything with the version `17.04`
incompatible=('debian:stretch' 'debian:sid' 'ubuntu:*' '*:jammy' '*:17.04')

You can retrieve your distro name by running lsb_release -si 2>/dev/null | tr '[:upper:]' '[:lower:]'.

To get the version name you can run lsb_release -sc 2>/dev/null | tr '[:upper:]' '[:lower:]'.

Logged functions

Pacstall will now log the output of prepare, build, and install to logs in /var/log/pacstall/error_log/$(date +"%Y-%m-%d_%T")-$name-$func.log where $name is the name of the package and $func is the function currently running. Logs will be automatically deleted after 30 days.

xz compresssion with -B flag

This simply means that when you use the -B flag to create a Deb, Pacstall will compress data.tar and control.tar with the xz format, instead of gz. Benchmarks are provided here.

name="pacstall"
version="3.1.0"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install -Dm 644 "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
pacstall - 3.0.2 Picotee

Published by Elsie19 almost 2 years ago

Pacstall v3.0.2 Picotee

This update is a bugfix update for bugs present in 3.0.1 Zaffre found and reported by the community. Users can update from Pacstall 1.5.1 or higher with pacstall -U pacstall master, or reinstall using the deb file.

Developers, Developers, Developers...

Bug fixes

  • makedeb function not printing out proper package name by @Henryws (#690)
  • Localize some variables, fix pacstall optdepends bug by @Henryws (#696)
  • Completions not working properly for -B flag by @D-Brox (#701)

Removals

  • Remove unused internal function cget by @Henryws (#695)
  • Remove unused dependencies by @Henryws (#702,#703)
name="pacstall"
version="3.0.2"
description="An AUR-inspired package manager for Ubuntu"
depends="bash curl wget unzip build-essential sensible-utils git"
optdepends=(
	"axel: faster file downloads"
)
maintainer="Pacstall Team <[email protected]>"
url="https://github.com/pacstall/pacstall/archive/refs/heads/develop.zip"

prepare() {
	sudo mkdir -p "${pkgdir}/usr/bin/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/scripts/"
	sudo mkdir -p "${pkgdir}/usr/share/pacstall/repo/"
	sudo mkdir -p "${pkgdir}/usr/share/man/man8/"
	sudo mkdir -p "${pkgdir}/var/log/pacstall/error_log/"
}

install() {
	sudo install -Dm 755 pacstall "${pkgdir}/usr/bin/"
	sudo install -C "misc/scripts"/* "${pkgdir}/usr/share/pacstall/scripts/"
	sudo install "misc/pacstall.8.gz" "${pkgdir}/usr/share/man/man8/"
	echo "https://raw.githubusercontent.com/pacstall/pacstall-programs/master" | sudo tee "${pkgdir}/usr/share/pacstall/repo/pacstallrepo.txt" >/dev/null
	sudo chmod +x "${pkgdir}/usr/share/pacstall/scripts"/*
}
Package Rankings
Top 29.72% on Crates.io