Helloo, firstly this might be long post about people talking void linux hasnt much packages in opposite of arch which has aur, so i will try conveince some people to void linux and will tell also something about package managers.

Package manager is a thing that keeps organized all programs on your pc, normally u would have to go to site, download .deb or .tar.xz and etc. package manager takes cares of doing that and manager also integrates this package with system, so when theres update and something is added or deleted, package manager will take care of all.

Okay, so if its only downloading then why AUR has 97587 packages, and XBPS-SRC (void linux - aur alternative kinda) has much less? It’s because AUR is community, anyone can maintain some package, XBPS-SRC also has community but by pulling requests to merge TEMPLATES, but that doesn’t mean u can’t add your own TEMPLATES.

Wait, wait, wait, what are TEMPLATES?

Its kind of script which makes Package manager do its thing. Templates in XBPS-src and “PKGBUILD?” in AUR are similar.

We have to tell in this script: what package, what version, give link to download and etc.

Example of TEMPLATE in XBPS-SRC for DISCORD:

# Template file for 'discord'
pkgname=discord
version=0.0.96
revision=1
archs="x86_64"
depends="alsa-lib dbus-glib gtk+3 libnotify nss libXtst libcxx libatomic
 xdg-utils webrtc-audio-processing libXScrnSaver"
short_desc="Chat and VOIP application"
maintainer="Ryan Conwell <ryanconwell@protonmail.com>"
license="custom:Proprietary"
homepage="https://discord.com/"
distfiles="https://dl.discordapp.net/apps/linux/$%7Bversion%7D/discord-$%7Bversion%7D.tar.gz"
checksum=2b885df8aa69310726f46149e39c42d48eda8f14b53aae605b5d7fa6410c4c0c
repository=nonfree
restricted=yes
nopie=yes
nostrip=yes

do_install() {
	local package_location="usr/lib/$pkgname" item
	vmkdir usr/share/pixmaps
	vcopy discord.png /usr/share/pixmaps/
	vmkdir usr/share/applications
	vcopy discord.desktop /usr/share/applications/
	vmkdir ${package_location}
	chmod +x Discord
	for item in \
		locales \
		resources \
		Discord \
		libffmpeg.so \
		snapshot_blob.bin \
		discord.png \
		icudtl.dat \
		libEGL.so \
		libGLESv2.so \
		chrome_100_percent.pak \
		chrome_200_percent.pak \
		chrome-sandbox \
		chrome_crashpad_handler \
		resources.pak \
		libvulkan.so.1 \
		v8_context_snapshot.bin \
		postinst.sh \
		libvk_swiftshader.so \
		vk_swiftshader_icd.json
	do
		vcopy "${item}" "${package_location}"
	done
	vmkdir usr/bin
	ln -sfr $DESTDIR/${package_location}/Discord $DESTDIR/usr/bin/Discord
}

post_install() {
	vlicense $FILESDIR/LICENSE
}

Okay, but still AUR has much much more packages than xbps-src, why should i use it then? Why should i learn how to make templates?

I hope u don’t use AUR blindly and just do yay -S something without looking what pkgbuild is doing, it might be dangerous not knowing what program can do and what script that is downloading it too right? XBPS-SRC learns you how to maintain packages.

Also theres way to share Templates with other by importing REPO of some templates, like librewolf-void repo and etc. So there’s way to share packages.

So this is my way to conveince you to use void linux :). IN MY OPINION, void is what people think arch is. A diy distro with learning curve to understand how OS works. ARCH is great!, but void gives you more knowledge of what things systemd takes care.

To make thing little bit funnier theres easy and really nice (experimental and not official) script of installing void :

https://github.com/kkrruumm/void-install-script

THANK YOU FOR READING! I might not be clear or right in some things so tell me about that in comment, i will read everything.

SOURCES:

https://xbps-src-tutorials.github.io/packaging/j4-dmenu-desktop.html
https://github.com/void-linux/void-packages
      • pfr@lemmy.sdf.org
        link
        fedilink
        arrow-up
        3
        ·
        8 hours ago

        To be fair, I don’t know much about grim or taking screenshots on Wayland in general so I don’t know. Looks complicated