43fd088349
Replace all 'rbos'/'RBOS' references with 'redbear'/'Red Bear OS' across the build system, scripts, docs, and configs. Renamed files: rbos.ipxe → redbear.ipxe assets/rbos-icon.png → assets/redbear-icon.png recipes/system/rbos-info → recipes/system/redbear-info Added redbear-info: a system tool that enumerates all Red Bear OS custom components, checks runtime availability via scheme paths and binary presence, and prints status/test info. Supports --verbose, --json, and --test output modes. Zero external dependencies.
102 lines
2.9 KiB
Makefile
102 lines
2.9 KiB
Makefile
# Configuration file with the commands configuration of the Red Bear OS image
|
|
|
|
$(BUILD)/harddrive.img: $(FSTOOLS) $(REPO_TAG)
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
mkdir -p $(BUILD)
|
|
-$(FUMOUNT) $(MOUNT_DIR) || true
|
|
-$(FUMOUNT) /tmp/redox_installer || true
|
|
rm -rf $@ $@.partial $(MOUNT_DIR)
|
|
FILESYSTEM_SIZE=$(FILESYSTEM_SIZE) && \
|
|
if [ -z "$$FILESYSTEM_SIZE" ] ; then \
|
|
FILESYSTEM_SIZE=$(shell $(INSTALLER) --filesystem-size -c $(FILESYSTEM_CONFIG)); \
|
|
fi && \
|
|
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
|
|
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $@.partial
|
|
mv $@.partial $@
|
|
endif
|
|
|
|
$(BUILD)/redbear-live.iso: $(FSTOOLS) $(REPO_TAG) redbear.ipxe
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
mkdir -p $(BUILD)
|
|
rm -rf $@ $@.partial
|
|
-$(FUMOUNT) /tmp/redox_installer || true
|
|
FILESYSTEM_SIZE=$(FILESYSTEM_SIZE) && \
|
|
if [ -z "$$FILESYSTEM_SIZE" ] ; then \
|
|
FILESYSTEM_SIZE=$(shell $(INSTALLER) --filesystem-size -c $(FILESYSTEM_CONFIG)); \
|
|
fi && \
|
|
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
|
|
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) --write-bootloader="$(BUILD)/bootloader-live.efi" --live $@.partial
|
|
mv $@.partial $@
|
|
cp redbear.ipxe $(BUILD)/redbear.ipxe
|
|
endif
|
|
|
|
$(BUILD)/filesystem.img: $(FSTOOLS) $(REPO_TAG)
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
mkdir -p $(BUILD)
|
|
-$(FUMOUNT) $(MOUNT_DIR) || true
|
|
rm -rf $@ $@.partial $(MOUNT_DIR)
|
|
-$(FUMOUNT) /tmp/redox_installer || true
|
|
FILESYSTEM_SIZE=$(FILESYSTEM_SIZE) && \
|
|
if [ -z "$$FILESYSTEM_SIZE" ] ; then \
|
|
FILESYSTEM_SIZE=$(shell $(INSTALLER) --filesystem-size -c $(FILESYSTEM_CONFIG)); \
|
|
fi && \
|
|
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
|
|
$(REDOXFS_MKFS) $(REDOXFS_MKFS_FLAGS) $@.partial
|
|
mkdir -p $(MOUNT_DIR)
|
|
$(REDOXFS) $@.partial $(MOUNT_DIR)
|
|
sleep 1
|
|
pgrep redoxfs
|
|
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $(MOUNT_DIR)
|
|
sync
|
|
-$(FUMOUNT) $(MOUNT_DIR) || true
|
|
rm -rf $(MOUNT_DIR)
|
|
mv $@.partial $@
|
|
endif
|
|
|
|
mount: $(FSTOOLS) FORCE
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
@mkdir -p $(MOUNT_DIR)
|
|
$(REDOXFS) $(BUILD)/harddrive.img $(MOUNT_DIR)
|
|
@sleep 2
|
|
@echo "\033[1;36;49mharddrive.img mounted ($$(pgrep redoxfs))\033[0m"
|
|
endif
|
|
|
|
mount_extra: $(FSTOOLS) FORCE
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
@mkdir -p $(MOUNT_DIR)
|
|
$(REDOXFS) $(BUILD)/extra.img $(MOUNT_DIR)
|
|
@sleep 2
|
|
@echo "\033[1;36;49mextra.img mounted ($$(pgrep redoxfs))\033[0m"
|
|
endif
|
|
|
|
mount_live: $(FSTOOLS) FORCE
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
@mkdir -p $(MOUNT_DIR)
|
|
$(REDOXFS) $(BUILD)/redbear-live.iso $(MOUNT_DIR)
|
|
@sleep 2
|
|
@echo "\033[1;36;49mredbear-live.iso mounted ($$(pgrep redoxfs))\033[0m"
|
|
endif
|
|
|
|
unmount: FORCE
|
|
ifeq ($(FSTOOLS_IN_PODMAN),1)
|
|
$(PODMAN_RUN) make $@
|
|
else
|
|
@sync
|
|
-$(FUMOUNT) $(MOUNT_DIR)
|
|
@rm -rf $(MOUNT_DIR)
|
|
@-$(FUMOUNT) /tmp/redox_installer 2>/dev/null || true
|
|
@echo "\033[1;36;49mFilesystem unmounted\033[0m"
|
|
endif
|