Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • fabiao/cookbook
  • redox-os/cookbook
  • stratact/cookbook
  • carrot93/cookbook
  • microcolonel/cookbook
  • feliwir/cookbook
  • xTibor/cookbook
  • jD91mZM2/cookbook
  • mpajkowski/cookbook
  • rw_van/cookbook
  • athei/cookbook
  • kblobr/cookbook
  • VitalyAnkh/cookbook
  • sajattack/cookbook
  • sainath14/cookbook
  • ackxolotl/cookbook
  • AdminXVII/cookbook
  • coolreader18/cookbook
  • deepaksirone/cookbook
  • smckay/cookbook
  • 4lDO2/cookbook
  • tomasritter/cookbook
  • alfredoyang/cookbook
  • samuela/cookbook
  • andrewdavidmackenzie/cookbook
  • uuuvn/cookbook
  • josh_williams/cookbook
  • bjorn3/cookbook
  • ids1024/cookbook
  • Chocimier/cookbook
  • bpisch/cookbook
  • willnode/cookbook
  • grnmeira/cookbook
  • andrey.turkin/cookbook
  • cameronbraid/cookbook
  • kamirr/cookbook
  • freewilll/cookbook
  • kivimango/cookbook
  • rukai/cookbook
  • mattmadeofpasta/cookbook
  • jordan_mccallum/cookbook
  • dahc/cookbook
  • Forest0923/cookbook
  • LLeny/cookbook
  • doriancodes/cookbook
  • ashton/cookbook
  • gmacd/cookbook
  • mojo/cookbook
  • wt/cookbook
  • red15/cookbook
  • hasheddan/cookbook
  • dimymark/cookbook
  • andypython/cookbook
  • enygmator/cookbook
  • Ivan/cookbook
  • argslc/cookbook
  • adi-g15/cookbook
  • tfinnegan937/cookbook
  • raffaeleragni/cookbook
  • Lekkit/cookbook
  • bitstr0m/cookbook
  • josh/cookbook
  • zhaozhao/cookbook
  • blueskyson/cookbook
  • Xunjin/cookbook
  • StaringAtEditor/cookbook
  • monk_programmer/cookbook
  • DimitarGj/cookbook
  • njskalski/cookbook
69 results
Show changes
Showing
with 352 additions and 4 deletions
Subproject commit 0ccbc9914b1ec655e23d4babc5afed87e42e9a0f
Subproject commit e8b316a8d52437b6f28cb3c68c61895403337018
GIT=https://github.com/redox-os/acid.git
[source]
tar = "https://github.com/lz4/lz4/releases/download/v1.10.0/lz4-1.10.0.tar.gz"
blake3 = "3e69fd475e7852e17594985528b5232afeba7d3d56cfebe2e89071768b2ab36a"
patches = ["redox.patch"]
[build]
template = "custom"
script = """
rsync -av --delete "${COOKBOOK_SOURCE}/" ./
# No configure provided
COOKBOOK_CONFIGURE="true"
COOKBOOK_CONFIGURE_FLAGS=""
export CPPFLAGS="${CPPFLAGS} -D_REDOX"
cookbook_configure
"""
diff '--color=auto' -ruwN source/programs/util.h source-new/programs/util.h
--- source/programs/util.h 2024-07-21 13:29:49.000000000 -0400
+++ source-new/programs/util.h 2024-12-13 02:21:03.032769559 -0500
@@ -52,6 +52,9 @@
#include <time.h> /* time */
#include <limits.h> /* INT_MAX */
#include <errno.h>
+#if defined(_REDOX)
+# include <sys/time.h> /* utimes */
+#endif
@@ -239,12 +242,20 @@
timebuf.modtime = statbuf->st_mtime;
res += utime(filename, &timebuf); /* set access and modification times */
#else
+ #if defined(_REDOX)
+ struct timeval timebuf[2];
+ memset(timebuf, 0, sizeof(timebuf));
+ timebuf[0].tv_usec = UTIME_NOW;
+ timebuf[1].tv_sec = statbuf->st_mtime;
+ res += utimes(filename, timebuf);
+ #else
struct timespec timebuf[2];
memset(timebuf, 0, sizeof(timebuf));
timebuf[0].tv_nsec = UTIME_NOW;
timebuf[1].tv_sec = statbuf->st_mtime;
res += utimensat(AT_FDCWD, filename, timebuf, 0); /* set access and modification times */
#endif
+#endif
}
#if !defined(_WIN32)
[source]
git = "https://github.com/pop-os/wallpapers"
[build]
template = "custom"
script = """
mkdir -pv "${COOKBOOK_STAGE}"/usr/share/wallpapers
cp -rv "${COOKBOOK_SOURCE}"/original/* "${COOKBOOK_STAGE}"/usr/share/wallpapers
"""
[source]
tar = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ubuntu-wallpapers/23.10.4/ubuntu-wallpapers_23.10.4.orig.tar.gz"
blake3 = "1e479d0aa48fe3f2961a2dac28c3ed397a29616cf6e7d73f5ceb6fabfd6449e1"
[build]
template = "custom"
script = """
mkdir -pv "${COOKBOOK_STAGE}"/usr/share/wallpapers
cp -rv "${COOKBOOK_SOURCE}"/ubuntu-wallpapers-23.10.4/*.{jpg,png} "${COOKBOOK_STAGE}"/usr/share/wallpapers
"""
GIT=https://github.com/redox-os/binutils.git
GIT=https://github.com/redox-os/contain.git
[source]
git = "https://gitlab.redox-os.org/redox-os/audiod.git"
[build]
template = "cargo"
[source]
same_as = "../base"
[build]
template = "custom"
script = """
mkdir -pv "${COOKBOOK_STAGE}/usr/bin"
for package in init logd ramfs randd zerod; do
"${COOKBOOK_CARGO}" build \
--manifest-path "${COOKBOOK_SOURCE}/${package}/Cargo.toml" \
${build_flags}
cp -v \
"target/${TARGET}/${build_type}/${package}" \
"${COOKBOOK_STAGE}/usr/bin/${package}"
done
# TODO: symlinks aren't supported by redox-initfs
#ln -sv zerod "${COOKBOOK_STAGE}/usr/bin/nulld"
cp "${COOKBOOK_STAGE}/usr/bin/zerod" "${COOKBOOK_STAGE}/usr/bin/nulld"
"""
[source]
git = "https://gitlab.redox-os.org/redox-os/base.git"
[build]
template = "custom"
script = """
mkdir -pv "${COOKBOOK_STAGE}/usr/bin"
for package in ipcd ptyd; do
"${COOKBOOK_CARGO}" build \
--manifest-path "${COOKBOOK_SOURCE}/${package}/Cargo.toml" \
${build_flags}
cp -v \
"target/${TARGET}/${build_type}/${package}" \
"${COOKBOOK_STAGE}/usr/bin/${package}"
done
"${COOKBOOK_CARGO}" build \
--manifest-path "${COOKBOOK_SOURCE}/netstack/Cargo.toml" \
${build_flags}
for bin in smolnetd dnsd; do
cp -v \
"target/${TARGET}/${build_type}/${bin}" \
"${COOKBOOK_STAGE}/usr/bin/${bin}"
done
"""
[source]
git = "https://gitlab.redox-os.org/redox-os/binutils.git"
[build]
template = "cargo"
[source]
git = "https://gitlab.redox-os.org/redox-os/bootloader.git"
[build]
template = "custom"
script = """
OUTDIR="${COOKBOOK_BUILD}"
mkdir -v "${COOKBOOK_STAGE}/boot"
function bootloader {
export TARGET="$1"
src="$2"
dst="$3"
"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" -f "${COOKBOOK_SOURCE}/Makefile" -C "${OUTDIR}" "${OUTDIR}/${src}"
cp -v "${OUTDIR}/${src}" "${COOKBOOK_STAGE}/boot/${dst}"
}
ARCH="$(echo "${TARGET}" | cut -d - -f1)"
# Build BIOS bootloader for supported architectures
if [ "${ARCH}" == "i686" -o "${ARCH}" == "x86_64" ]
then
bootloader "x86-unknown-none" bootloader.bin bootloader.bios
bootloader "x86-unknown-none" bootloader-live.bin bootloader-live.bios
fi
# Build UEFI bootloader for supported architectures
if [ "${ARCH}" == "aarch64" -o "${ARCH}" == "x86_64" -o "${ARCH}" == "riscv64gc" ]
then
bootloader "${ARCH}-unknown-uefi" bootloader.efi bootloader.efi
bootloader "${ARCH}-unknown-uefi" bootloader-live.efi bootloader-live.efi
fi
"""
[source]
git = "https://gitlab.redox-os.org/redox-os/bootstrap.git"
[build]
template = "custom"
script = """
ARCH="$(echo "${GNU_TARGET}" | cut -d - -f1)"
cargo \
-Zbuild-std=core,alloc,compiler_builtins \
-Zbuild-std-features=compiler-builtins-mem rustc \
--target "${TARGET}" \
--manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \
--release \
--target-dir "${COOKBOOK_BUILD}" \
-- \
--emit link="${COOKBOOK_BUILD}/${TARGET}/release/libbootstrap.a"
mkdir -v "${COOKBOOK_STAGE}/boot"
"${GNU_TARGET}-ld" \
-o "${COOKBOOK_STAGE}/boot/bootstrap" \
--gc-sections \
-T "${COOKBOOK_SOURCE}/src/${ARCH}.ld" \
-z max-page-size=4096 \
"${COOKBOOK_BUILD}/${TARGET}/release/libbootstrap.a"
"""
[source]
git = "https://gitlab.redox-os.org/redox-os/contain.git"
[build]
template = "cargo"
[source]
git = "https://gitlab.redox-os.org/redox-os/coreutils.git"
[build]
template = "cargo"
[source]
git = "https://gitlab.redox-os.org/redox-os/dash.git"
branch = "redox"
[build]
template = "custom"
script = """
rsync -av --delete "${COOKBOOK_SOURCE}/" ./
./autogen.sh
./configure \
--host="${TARGET}" \
--prefix="" \
--enable-static \
cross_compiling=yes
# See https://stackoverflow.com/questions/4247068/sed-command-with-i-option-failing-on-mac-but-works-on-linux.
sed -i'' -e 's|#define HAVE_GETRLIMIT 1|/* #undef HAVE_GETRLIMIT */|g' config.h
# Skip configure
COOKBOOK_CONFIGURE="true"
COOKBOOK_CONFIGURE_FLAGS=()
cookbook_configure
"""
[source]
same_as = "../drivers"
[build]
template = "custom"
script = """
BINS=(
acpid
fbbootlogd
fbcond
inputd
lived
nvmed
pcid
pcid-spawner
vesad
)
virt_bins()
{
BINS+=(virtio-blkd virtio-gpud)
}
x86_common_bins()
{
BINS+=(ahcid ided ps2d vesad)
virt_bins
}
aarch64_bins()
{
case "${BOARD}" in
raspi3b*)
BINS+=(bcm2835-sdhcid)
;;
*)
#qemu-virt
virt_bins
;;
esac
}
case "${TARGET}" in
i686-unknown-redox)
x86_common_bins
;;
x86_64-unknown-redox)
x86_common_bins
;;
aarch64-unknown-redox)
aarch64_bins
;;
*)
;;
esac
mkdir -pv "${COOKBOOK_STAGE}/bin" "${COOKBOOK_STAGE}/lib/drivers"
export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
export CARGO_PROFILE_RELEASE_PANIC=abort
"${COOKBOOK_CARGO}" build --release \
--manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \
$(for bin in "${BINS[@]}"; do echo "-p" "${bin}"; done)
for bin in "${BINS[@]}"
do
case "${bin}" in
pcid | pcid-spawner | fbbootlogd | fbcond | inputd | vesad | lived | ps2d | acpid | bcm2835-sdhcid)
cp -v "target/${TARGET}/release/${bin}" "${COOKBOOK_STAGE}/bin"
;;
*)
cp -v "target/${TARGET}/release/${bin}" "${COOKBOOK_STAGE}/lib/drivers"
;;
esac
done
mkdir -pv "${COOKBOOK_STAGE}/etc/pcid"
cp -v "${COOKBOOK_SOURCE}/initfs.toml" "${COOKBOOK_STAGE}/etc/pcid/initfs.toml"
"""
[source]
git = "https://gitlab.redox-os.org/redox-os/drivers.git"
[build]
template = "custom"
script = """
# Drivers that are built on all architectures, and NOT in drivers-initfs
BINS=(
alxd
e1000d
ihdad
ixgbed
pcid
pcid-spawner
rtl8139d
rtl8168d
usbctl
usbhidd
usbhubd
usbscsid
virtio-netd
xhcid
inputd
)
# Add additional drivers to the list to build, that are not in drivers-initfs
# depending on the target architecture
case "${TARGET}" in
i686-unknown-redox | x86_64-unknown-redox)
BINS+=(ac97d bgad sb16d vboxd)
;;
*)
;;
esac
#Build each driver in the list
mkdir -pv "${COOKBOOK_STAGE}/usr/bin" "${COOKBOOK_STAGE}/usr/lib/drivers"
export CARGO_PROFILE_RELEASE_OPT_LEVEL=s
export CARGO_PROFILE_RELEASE_PANIC=abort
"${COOKBOOK_CARGO}" build --release \
--manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \
$(for bin in "${BINS[@]}"; do echo "-p" "${bin}"; done)
for bin in "${BINS[@]}"
do
if [[ "${bin}" == "inputd" || "${bin}" == "pcid" || "${bin}" == "pcid-spawner" ]]; then
cp -v "target/${TARGET}/release/${bin}" "${COOKBOOK_STAGE}/usr/bin"
else
cp -v "target/${TARGET}/release/${bin}" "${COOKBOOK_STAGE}/usr/lib/drivers"
fi
done
mkdir -pv "${COOKBOOK_STAGE}/etc/pcid"
cp -v "${COOKBOOK_SOURCE}/initfs.toml" "${COOKBOOK_STAGE}/etc/pcid/initfs.toml"
mkdir -pv "${COOKBOOK_STAGE}/etc/pcid.d"
${FIND} "${COOKBOOK_SOURCE}" -maxdepth 3 -type f -name 'config.toml' | while read conf
do
driver="$(basename "$(dirname "$conf")")"
cp -v "$conf" "${COOKBOOK_STAGE}/etc/pcid.d/$driver.toml"
done
"""