Compare commits

...

10 Commits

Author SHA1 Message Date
Ribbon
230df82d68 Merge branch 'add-mold-package' into 'master'
Add the mold linker in the Podman container

See merge request redox-os/redox!1589
2025-09-07 18:33:38 -03:00
Jeremy Soller
03bf1f54da
Disable rustpython in i686 desktop 2025-09-07 13:36:49 -06:00
Jeremy Soller
45c84f477e
Update cookbook and relibc 2025-09-07 12:49:19 -06:00
Jeremy Soller
2d5b528035 Merge branch 'cookbook_cleanups' into 'master'
Only pass recipe name to fetch.sh and repo.sh

See merge request redox-os/redox!1639
2025-09-06 07:27:08 -06:00
bjorn3
acc8bc59bc Update cookbook 2025-09-06 15:17:13 +02:00
bjorn3
12a5a00afe Only pass recipe name to fetch.sh and repo.sh 2025-09-06 15:17:00 +02:00
Jeremy Soller
b85b901841 Merge branch 'push-image' into 'master'
Add push recipe to existing image

See merge request redox-os/redox!1640
2025-09-06 07:09:32 -06:00
Wildan M
cedf58ed5d Fix typo 2025-09-05 16:57:21 +07:00
Wildan M
a521b5fc8c Add push recipe to existing image 2025-09-04 23:37:38 +07:00
Ribbon
2607824648 Add the mold linker in the Podman container 2025-06-20 00:00:11 -03:00
8 changed files with 50 additions and 19 deletions

View File

@ -11,4 +11,5 @@ include = ["../desktop.toml"]
# Package settings
[packages]
# example = {}
# example = {}
rustpython = "ignore" # https://github.com/Alexhuszagh/rust-lexical/issues/218

@ -1 +1 @@
Subproject commit 4f3b3288c328bf838c4b120142a97c932027bf67
Subproject commit 00ff0c5ff92e4fd78378604785b9278e7d26e5a4

View File

@ -31,7 +31,7 @@ else
$(HOST_CARGO) build --manifest-path installer/Cargo.toml --release
export PATH="$(PREFIX_PATH):$$PATH" && \
export COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) -c config/$(ARCH)/ci.toml)" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) --short -c config/$(ARCH)/ci.toml)" && \
cd cookbook && \
./fetch.sh "$${PACKAGES}" && \
./repo.sh $(REPO_NONSTOP) "$${PACKAGES}"

View File

@ -109,6 +109,7 @@ else
export GNU_TARGET=$(TARGET)
endif
BUILD=build/$(ARCH)/$(CONFIG_NAME)
MOUNT_DIR=$(BUILD)/filesystem
HOST_FSTOOLS=build/fstools
INSTALLER=$(HOST_FSTOOLS)/bin/redox_installer
INSTALLER_OPTS=

View File

@ -27,8 +27,8 @@ $(BUILD)/redox-live.iso: $(HOST_FSTOOLS) $(REPO_TAG) redox.ipxe
$(BUILD)/filesystem.img: $(HOST_FSTOOLS) $(REPO_TAG)
mkdir -p $(BUILD)
-$(FUMOUNT) $(BUILD)/filesystem/ || true
rm -rf $@ $@.partial $(BUILD)/filesystem/
-$(FUMOUNT) $(MOUNT_DIR) || true
rm -rf $@ $@.partial $(MOUNT_DIR)
-$(FUMOUNT) /tmp/redox_installer || true
FILESYSTEM_SIZE=$(FILESYSTEM_SIZE) && \
if [ -z "$$FILESYSTEM_SIZE" ] ; then \
@ -36,30 +36,30 @@ $(BUILD)/filesystem.img: $(HOST_FSTOOLS) $(REPO_TAG)
fi && \
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
$(REDOXFS_MKFS) $(REDOXFS_MKFS_FLAGS) $@.partial
mkdir -p $(BUILD)/filesystem/
$(REDOXFS) $@.partial $(BUILD)/filesystem/
mkdir -p $(MOUNT_DIR)
$(REDOXFS) $@.partial $(MOUNT_DIR)
sleep 1
pgrep redoxfs
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $(BUILD)/filesystem/
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $(MOUNT_DIR)
sync
-$(FUMOUNT) $(BUILD)/filesystem/ || true
rm -rf $(BUILD)/filesystem/
-$(FUMOUNT) $(MOUNT_DIR) || true
rm -rf $(MOUNT_DIR)
mv $@.partial $@
mount: $(HOST_FSTOOLS) FORCE
mkdir -p $(BUILD)/filesystem/
$(REDOXFS) $(BUILD)/harddrive.img $(BUILD)/filesystem/
mkdir -p $(MOUNT_DIR)
$(REDOXFS) $(BUILD)/harddrive.img $(MOUNT_DIR)
sleep 2
pgrep redoxfs
mount_extra: $(HOST_FSTOOLS) FORCE
mkdir -p $(BUILD)/filesystem/
$(REDOXFS) $(BUILD)/extra.img $(BUILD)/filesystem/
mkdir -p $(MOUNT_DIR)
$(REDOXFS) $(BUILD)/extra.img $(MOUNT_DIR)
sleep 2
pgrep redoxfs
unmount: FORCE
sync
-$(FUMOUNT) $(BUILD)/filesystem/ || true
rm -rf $(BUILD)/filesystem/
-$(FUMOUNT) $(MOUNT_DIR) || true
rm -rf $(MOUNT_DIR)
-$(FUMOUNT) /tmp/redox_installer || true

View File

@ -5,7 +5,7 @@ ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
export PATH="$(PREFIX_PATH):$$PATH" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) -c $(FILESYSTEM_CONFIG))" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) --short -c $(FILESYSTEM_CONFIG))" && \
export COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
cd cookbook && \
./fetch.sh $(REPO_NONSTOP) $(REPO_OFFLINE) "$${PACKAGES}"
@ -19,7 +19,7 @@ ifeq ($(PODMAN_BUILD),1)
else
export PATH="$(PREFIX_PATH):$$PATH" && \
export COOKBOOK_HOST_SYSROOT="$(ROOT)/$(PREFIX_INSTALL)" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) -c $(FILESYSTEM_CONFIG))" && \
PACKAGES="$$($(LIST_PACKAGES) $(LIST_PACKAGES_OPTS) --short -c $(FILESYSTEM_CONFIG))" && \
cd cookbook && \
./repo.sh $(REPO_NONSTOP) $(REPO_OFFLINE) --with-package-deps "$${PACKAGES}"
mkdir -p $(BUILD)
@ -87,6 +87,34 @@ else
fi
endif
MOUNTED_TAG=$(MOUNT_DIR)~
# Push compiled package into existing image
# DO NOT RUN THIS WHILE QEMU ALIVE, THE DISK MIGHT CORRUPT IN DOING SO
p.%: $(FSTOOLS_TAG) FORCE
@rm -f $(MOUNTED_TAG)
@if [ ! -d "$(MOUNT_DIR)" ]; then \
$(MAKE) mount; \
touch $(MOUNTED_TAG); \
fi
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@if echo "$*" | grep -q ','; then \
$(MAKE) $(foreach f,$(subst $(comma), ,$*),p.$(f)); \
else \
export RECIPE_PATH=cookbook/$(shell make find.$* | grep ^recipes) && \
export RECIPE_STAGE=$$RECIPE_PATH/target/$(TARGET)/stage.pkgar && \
./cookbook/pkgar/target/release/pkgar extract $(MOUNT_DIR)/ --archive $$RECIPE_STAGE \
--pkey ./cookbook/build/id_ed25519.pub.toml && \
echo "extracted $$RECIPE_PATH"; \
fi
endif
@if [ -f $(MOUNTED_TAG) ]; then \
$(MAKE) unmount && rm -f $(MOUNTED_TAG); \
else echo "Not unmounting by ourself, don't forget to do it"; \
fi
# Invoke unfetch.sh for one or more targets separated by comma
u.%: $(FSTOOLS_TAG) FORCE
ifeq ($(PODMAN_BUILD),1)

View File

@ -56,6 +56,7 @@ RUN useradd --create-home --no-log-init --uid _UID_ poduser \
m4 \
make \
meson \
mold \
nasm \
ninja-build \
patch \

2
relibc

@ -1 +1 @@
Subproject commit fd9a1c9668c10d122eab9839d0f0f7f4d88703ab
Subproject commit e291a2527a9e0f18703a50880b68310e43780e81