From fbbd9670caf91d9855a65db9e2a180aa00d7cba4 Mon Sep 17 00:00:00 2001 From: EnumDev Date: Sat, 15 Mar 2025 11:17:01 +0200 Subject: [PATCH] Initial Commit --- pkg.info | 11 +++++++++++ source.sh | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 pkg.info create mode 100644 source.sh diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..5522d5b --- /dev/null +++ b/pkg.info @@ -0,0 +1,11 @@ +name: uutils-coreutils +description: Cross-platform Rust rewrite of the GNU coreutils +version: 0.0.30 +url: https://github.com/uutils/coreutils +license: MIT +architecture: any +depends: ["acl","attr","glibc","gmp","libcap","openssl"] +make_depends: ["rustc"] +provides: ["coreutils"] +conflicts: ["gnu-coreutils"] +type: source diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..0f126a1 --- /dev/null +++ b/source.sh @@ -0,0 +1,39 @@ +# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +DOWNLOAD="https://github.com/uutils/coreutils/archive/refs/tags/${BPM_PKG_VERSION}.tar.gz" +FILENAME="${DOWNLOAD##*/}" + +SKIPPED_UTILS="hostname kill more uptime" + +# The prepare function is executed in the root of the temp directory +# This function is used for downloading files and putting them into the correct location +prepare() { + wget "$DOWNLOAD" + tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE" +} + +# The build function is executed in the source directory +# This function is used to compile the source code +build() { + make PREFIX=/usr MANDIR=/share/man/man1 PROFILE=release SKIP_UTILS="$SKIPPED_UTILS" +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + make PREFIX=/usr MANDIR=/share/man/man1 MULTICALL=y SKIP_UTILS="$SKIPPED_UTILS" DESTDIR="$BPM_OUTPUT" install + + # Add symlinks to missing binaries + local binaries=( + "b2sum" "b3sum" "md5sum" "sha1sum" "sha224sum" + "sha256sum" "sha3-224sum" "sha3-256sum" "sha3-384sum" "sha3-512sum" + "sha384sum" "sha3sum" "sha512sum" "shake128sum" "shake256sum" + ) + for bin in "${binaries[@]}"; do + ln -s coreutils "$BPM_OUTPUT"/usr/bin/"$bin" + done + + install -Dm644 LICENSE "$BPM_OUTPUT"/usr/share/licenses/uutils-coreutils/LICENSE +}