Compare commits
3 Commits
76b6aa95c6
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 075406dfd5 | |||
| 4d4816c775 | |||
| 037a9bf75c |
@@ -0,0 +1,32 @@
|
|||||||
|
|
||||||
|
The shared library will be installed at:
|
||||||
|
|
||||||
|
/usr/lib/libhardened_malloc.so
|
||||||
|
/usr/lib/libhardened_malloc-light.so
|
||||||
|
|
||||||
|
It's will NOT become active on its own. To enable it system-wide, you must preload it.
|
||||||
|
|
||||||
|
1. Test it first! Make sure a normal binary still runs:
|
||||||
|
|
||||||
|
LD_PRELOAD=/usr/lib/libhardened_malloc.so /bin/true && echo OK
|
||||||
|
LD_PRELOAD=/usr/lib/libhardened_malloc-light.so /bin/true && echo OK
|
||||||
|
|
||||||
|
If that prints OK, the library loads cleanly on this system.
|
||||||
|
|
||||||
|
2. Enable system-wide by adding this single line to /etc/ld.so.preload
|
||||||
|
(create if file doesn't exist):
|
||||||
|
|
||||||
|
/usr/lib/libhardened_malloc.so
|
||||||
|
|
||||||
|
for light variant:
|
||||||
|
/usr/lib/libhardened_malloc-light.so
|
||||||
|
|
||||||
|
Per-process alternative (safer to trial): just export LD_PRELOAD as above
|
||||||
|
for the programs you want, instead of editing ld.so.preload.
|
||||||
|
|
||||||
|
################ WARNING ################
|
||||||
|
|
||||||
|
/etc/ld.so.preload is loaded by EVERY dynamically-linked program.
|
||||||
|
If provided .so files are ever missing or broken while listed there, essential
|
||||||
|
tools (your shell, sudo , xbps) may fail to start and you can lock
|
||||||
|
yourself out of a running system.
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
# Template file for 'hardened_malloc'
|
||||||
|
pkgname=hardened_malloc
|
||||||
|
version=14
|
||||||
|
revision=1
|
||||||
|
build_style=gnu-makefile
|
||||||
|
short_desc="Hardened memory allocator from GrapheneOS"
|
||||||
|
maintainer="desolate.land"
|
||||||
|
license="MIT"
|
||||||
|
homepage="https://github.com/GrapheneOS/hardened_malloc"
|
||||||
|
distfiles="https://github.com/GrapheneOS/hardened_malloc/archive/refs/tags/${version}.tar.gz"
|
||||||
|
checksum=4cd95ff3b83c433ebc6269d0778d79eb3480b7d5bc873503e1cc3768546bdbec
|
||||||
|
|
||||||
|
do_build()
|
||||||
|
{
|
||||||
|
make ${makejobs} VARIANT=default
|
||||||
|
make ${makejobs} VARIANT=light
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install()
|
||||||
|
{
|
||||||
|
vinstall out/libhardened_malloc.so 755 usr/lib
|
||||||
|
vinstall out-light/libhardened_malloc-light.so 755 usr/lib
|
||||||
|
|
||||||
|
vlicense LICENSE
|
||||||
|
}
|
||||||
@@ -0,0 +1,56 @@
|
|||||||
|
# Template file for 'odin'
|
||||||
|
pkgname=odin
|
||||||
|
version=2026.06
|
||||||
|
revision=1
|
||||||
|
_tag="dev-${version//./-}"
|
||||||
|
archs="x86_64"
|
||||||
|
hostmakedepends="clang llvm22 llvm22-devel make which"
|
||||||
|
makedepends="llvm22-devel"
|
||||||
|
checkdepends="python3"
|
||||||
|
depends="clang"
|
||||||
|
short_desc="Data-oriented programming language"
|
||||||
|
maintainer="Desolate"
|
||||||
|
license="BSD-3-Clause"
|
||||||
|
homepage="https://odin-lang.org/"
|
||||||
|
nostrip=yes
|
||||||
|
distfiles="https://github.com/odin-lang/Odin/archive/refs/tags/${_tag}.tar.gz"
|
||||||
|
checksum=9f91df15e06e782bdd2825926efc256ad1a79b3e022a1398e4e10dcc4d4d95fa
|
||||||
|
wrksrc="Odin-${_tag}"
|
||||||
|
|
||||||
|
do_build() {
|
||||||
|
export CXX=clang++
|
||||||
|
export LLVM_CONFIG=llvm-config
|
||||||
|
make release
|
||||||
|
|
||||||
|
make -C vendor/cgltf/src
|
||||||
|
make -C vendor/miniaudio/src
|
||||||
|
make -C vendor/stb/src
|
||||||
|
}
|
||||||
|
|
||||||
|
do_check() {
|
||||||
|
./odin check examples/all -strict-style
|
||||||
|
python3 tests/core/download_assets.py tests/core/assets
|
||||||
|
./odin test tests/core/speed.odin -o:speed -file -all-packages
|
||||||
|
./odin test tests/vendor -all-packages
|
||||||
|
./odin test tests/internal -all-packages
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
vmkdir usr/lib/odin
|
||||||
|
vinstall odin 755 usr/lib/odin
|
||||||
|
for d in base core shared vendor; do
|
||||||
|
vcopy "$d" usr/lib/odin
|
||||||
|
done
|
||||||
|
|
||||||
|
# Create wrapper script to ensure ODIN_ROOT is set correctly
|
||||||
|
cat > odin.sh <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
export ODIN_ROOT=/usr/lib/odin
|
||||||
|
exec /usr/lib/odin/odin "\$@"
|
||||||
|
EOF
|
||||||
|
vbin odin.sh odin
|
||||||
|
|
||||||
|
vlicense LICENSE
|
||||||
|
vdoc PROPOSAL-PROCESS.md
|
||||||
|
vdoc README.md
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
# Template file for 'yazi'
|
||||||
|
pkgname=yazi
|
||||||
|
version=26.5.6
|
||||||
|
revision=1
|
||||||
|
build_style=cargo
|
||||||
|
hostmakedepends="pkg-config"
|
||||||
|
makedepends="oniguruma-devel lua54-devel"
|
||||||
|
depends="nerd-fonts-symbols-ttf"
|
||||||
|
short_desc="Blazing fast terminal file manager, based on async I/O"
|
||||||
|
maintainer="Bnyro <bnyro@tutanota.com>"
|
||||||
|
license="MIT"
|
||||||
|
homepage="https://yazi-rs.github.io"
|
||||||
|
changelog="https://github.com/sxyazi/yazi/releases"
|
||||||
|
distfiles="https://github.com/sxyazi/yazi/archive/refs/tags/v${version}.tar.gz"
|
||||||
|
checksum=a18445df86a20068f7b17609d12d6f635de488958579ae7a2b143a244ba7e63f
|
||||||
|
|
||||||
|
export VERGEN_GIT_SHA="${version}_${revision}"
|
||||||
|
# enable the generation of shell auto completions
|
||||||
|
export YAZI_GEN_COMPLETIONS=true
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
vbin target/${RUST_TARGET}/release/yazi
|
||||||
|
vbin target/${RUST_TARGET}/release/ya
|
||||||
|
vcompletion yazi-boot/completions/yazi.bash bash
|
||||||
|
vcompletion yazi-boot/completions/yazi.fish fish
|
||||||
|
vcompletion yazi-boot/completions/_yazi zsh
|
||||||
|
vinstall assets/yazi.desktop 644 /usr/share/applications
|
||||||
|
vinstall assets/logo.png 644 /usr/share/pixmaps yazi.png
|
||||||
|
vlicense LICENSE
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user