Jeremy Soller
b54ea5f625
Fix container_su and remove extra --tty argument from container_shell
2025-11-01 16:06:53 -06:00
Jeremy Soller
9b65670326
Merge branch 'master' of https://gitlab.redox-os.org/redox-os/redox
2025-11-01 14:22:21 -06:00
Jeremy Soller
31c1eed5a8
Pass through REPO variables to podman and add REPO_APPSTREAM
2025-11-01 14:22:17 -06:00
bjorn3
8e8ced1f91
Fix comment syntax in makefile
2025-11-01 20:41:50 +01:00
bjorn3
18f2025931
Refactor TARGET calculation in preparation for i586-unknown-redox
2025-11-01 20:03:29 +01:00
bjorn3
9326e12213
Remove no longer necessary targets dir
...
All target specs we use are now built into rustc.
2025-11-01 20:03:29 +01:00
Jeremy Soller
a144044bd8
Drop minimal and minimal-net pre-built images from CI
2025-10-31 15:20:24 -06:00
Jeremy Soller
be9a3f7f6c
Merge branch 'prefix-deps' into 'master'
...
Fix prefix not being triggered
See merge request redox-os/redox!1666
2025-10-31 11:22:17 -06:00
Wildan M
d0750a63ac
Add filesystem config trigger to rebuild
2025-10-31 23:09:01 +07:00
Wildan M
8e90c80aa9
Fix prefix not being triggered
2025-10-31 22:57:16 +07:00
Wildan M
7e650742c0
Use cookbook new filesystem config
2025-10-31 15:45:07 +07:00
Wildan M
5382f39857
Update to use the new repo bin
2025-10-28 00:29:54 +07:00
Jeremy Soller
9db52437c6
Support binary prefix for aarch64 on aarch64
2025-10-21 12:27:40 -06:00
Jeremy Soller
41ca0bea4c
Set HOST_TARGET and adjust PREFIX_BINARY for podman host
2025-10-21 11:53:10 -06:00
Jeremy Soller
bf65e41266
Add HOST_TARGET to CI toolchain path
2025-10-21 10:13:36 -06:00
Jeremy Soller
8f6e204381
Build host fstools as part of fstools target
2025-10-11 13:38:14 -06:00
Jeremy Soller
0f06d86f5a
Add mount_live target
2025-10-10 11:26:00 -06:00
Jeremy Soller
00be8094b1
Revert "Install C++ header on prefix"
...
This reverts commit 155bcb2ff2 .
2025-10-03 10:41:06 -06:00
Wildan Mubarok
155bcb2ff2
Install C++ header on prefix
2025-10-01 08:06:33 +00:00
Wildan Mubarok
4597c5f0fa
Add push recipe combination and more ports to forward on QEMU
2025-09-27 22:11:42 -06:00
Wildan Mubarok
86fba41a91
Add gdbgui that works for native build
2025-09-21 16:11:55 +00:00
bjorn3
12a5a00afe
Only pass recipe name to fetch.sh and repo.sh
2025-09-06 15:17:00 +02: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
bjorn3
16e98e3f28
Add a make qemu mode to allow attaching gdb without waiting for it
...
This way you can unconditionally enable this mode during development
without being forced to attach a debugger every time you start a VM.
2025-08-24 18:56:39 +02:00
bjorn3
716cca1b4e
Enable UEFI by default on x86_64
...
It boots faster and more reliable than SeaBIOS. And in practice you are
unlikely to use BIOS on real hardware if you have an x86_64 capable CPU
anyway.
2025-08-24 18:40:01 +02:00
Jeremy Soller
f768df678c
Merge branch 'qemu_gpu' into 'master'
...
Rework qemu gpu configuration
See merge request redox-os/redox!1634
2025-08-24 09:07:42 -06:00
bjorn3
5d7fcad842
Rework qemu gpu configuration
...
* Make gpu=no work on arm64 and riscv64
* Register gpu's with the firmware as vga card on x86 where possible
* Add a virtio-gl option for virtio-gpu with OpenGL support (no support
on the driver side yet)
* Support ramfb on x86
2025-08-24 16:31:54 +02:00
Wildan Mubarok
c09215748d
Formatting
2025-08-18 10:37:28 +00:00
Wildan Mubarok
cb36369905
Apply apic and mouse fixes
2025-08-18 10:10:09 +00:00
Wildan Mubarok
e3f6bf4b1d
Merge branch redox:master into windows-qemu
2025-08-18 08:58:19 +00:00
Wildan Mubarok
aad831766c
Use HVF Acceleration by default for MacOS Silicon
2025-08-16 13:36:12 +00:00
Wildan Mubarok
b50084d4dd
Add option to run Windows QEMU when using WSL2
2025-08-15 19:45:23 +00:00
Wildan M
05e7279156
Fix make invocation for Podman in MacOS
2025-08-15 12:53:08 +07:00
Jeremy Soller
69eaf3c531
Merge branch 'trixie_fix_netboot' into 'master'
...
Fix netbooting on Debian
See merge request redox-os/redox!1626
2025-08-12 14:02:22 -06:00
bjorn3
472df6fb44
Fix netbooting on Debian
...
In Debian Trixie OVMF has moved to a different location. In addition the
bootrom of the network adapters no longer contains iPXE, so we need to
manually chainload it (make sure to install the ipxe package).
2025-08-12 20:08:20 +02:00
Wildan Mubarok
6a531d6f22
Add package deps flag
2025-08-11 14:21:31 +00:00
Wildan Mubarok
fb890fdfbd
Add qemu debugging for any recipes
2025-08-01 06:37:09 +00:00
Wildan Mubarok
f0a1c1cbcc
Add kernel debugger GUI via podman
2025-07-31 13:33:51 +00:00
Jeremy Soller
722ebf6f30
Merge branch 'repo-offline' into 'master'
...
Add REPO_OFFLINE option
Closes #1202
See merge request redox-os/redox!1607
2025-07-09 09:47:50 -06:00
Wildan Mubarok
174fcaa6b9
Fix sysroot update logic
2025-07-08 10:21:16 +00:00
Wildan Mubarok
cb619120a4
Make repo config configurable with integer
2025-07-05 16:21:58 +00:00
Wildan Mubarok
47805f2362
Add REPO_OFFLINE option
2025-07-05 15:53:39 +00:00
Wildan Mubarok
916d8335e3
Support build with sccache in podman
2025-07-04 20:54:16 -06:00
Petr Hrdina
3e8464aa16
Open podman once for multiple jobs in repo.mk
2025-07-03 13:12:36 +02:00
Jeremy Soller
fcbc2ea787
Fix libtool-build not removing old directories
2025-07-02 14:27:07 -06:00
Petr Hrdina
c90d1014a0
Allow multiple recipes in target without 'l'
2025-07-02 10:22:52 +02:00
Jeremy Soller
6b73b106f1
Merge branch 'uefi-bins' into 'master'
...
Dynamically search UEFI firmware
See merge request redox-os/redox!1593
2025-06-29 12:21:15 -06:00
Wildan Mubarok
fd370ccf7e
Dynamically search UEFI firmware
2025-06-29 12:21:15 -06:00
Wildan Mubarok
f865aa3866
Do not build host prefix for MacOS Podman build
2025-06-29 12:20:47 -06:00
Jeremy Soller
3c9bffa547
Merge branch 'master' into 'master'
...
Add make recipe commands for multiple targets, speedup category.sh for podman build.
See merge request redox-os/redox!1590
2025-06-25 08:46:04 -06:00
Jeremy Soller
1991f17ef7
Merge branch 'netboot_improvements' into 'master'
...
Bunch of netboot improvements
See merge request redox-os/redox!1591
2025-06-25 08:43:11 -06:00
Wildan Mubarok
e36fdf54c4
Fix podman continously trying to rebuild libtool-build
2025-06-24 10:39:51 +00:00
bjorn3
fb64e5e9b8
Use the build dir as tftproot and build a suitable tftproot when building the live disk
2025-06-22 20:23:28 +02:00
bjorn3
d2fde06fd1
Rename livedisk.iso to redox-live.iso
2025-06-22 20:20:09 +02:00
bjorn3
ccb1509f00
Rename redox-live.img to redox-live.iso
2025-06-22 20:13:59 +02:00
Petr Hrdina
42b1a1c14a
Add make recipe commands for multiple targets
2025-06-22 12:34:42 +02:00
Wildan Mubarok
5ebd0729f9
Make libtool cloning works for older git
2025-06-13 02:16:00 +00:00
Jeremy Soller
691d845d4b
Merge branch 'virtualbox-deprecated-audio-switch' into 'master'
...
vbox: --audio is deprecated/removed
See merge request redox-os/redox!1586
2025-06-12 11:03:05 -06:00
Jeremy Soller
05e7695761
Merge branch 'faster-libtool-clone' into 'master'
...
Speedup cloning libtool
See merge request redox-os/redox!1584
2025-06-12 10:54:46 -06:00
Josh Megnauth
e352fe6bfd
vbox: --audio is deprecated/removed
...
--audio-driver is the replacement switch.
2025-06-06 23:54:29 -04:00
Wildan Mubarok
ed0da0981b
Speedup cloning libtool
2025-06-03 18:35:10 +00:00
bjorn3
41b51f692a
Add support for netboot
...
This includes building a tftp root and using it with qemu.
2025-06-01 20:54:56 +02:00
zinzaguras
9a3866e758
Fix non podman build.
...
1. Export version for libtool cause some packages checks for it;
2. Set PATH variable to include redox toolchain before sysroot been created,
as it's required by libtool and relibc.
2025-05-12 23:05:35 +00:00
Jeremy Soller
a874fe29e4
Add target for finding recipe
2025-05-09 10:23:05 -06:00
Jeremy Soller
8a3948e181
Use gnulib github mirror
2025-05-07 10:22:22 -06:00
Jeremy Soller
a162e93e79
ci-toolchain should depend on container tag
2025-05-06 20:00:34 -06:00
Jeremy Soller
38e0f178fb
Build minimal and minimal-net images
2025-04-24 17:19:22 -06:00
Ron Williams
daf4a0f730
Fix typo
2025-04-23 21:34:02 -07:00
Ron Williams
cf9a0085be
Improve host vs container separation of fstools
2025-04-24 04:28:15 +00:00
Jeremy Soller
d8a3052f88
Use podman compiled list_packages for ci-pkg
2025-04-23 19:21:34 -06:00
Jeremy Soller
eb474e6858
Remove docgen
2025-04-23 19:19:45 -06:00
Jeremy Soller
198f665c0d
Fix installer path
2025-04-23 19:18:42 -06:00
Jeremy Soller
490b7d7f3a
Add fstools and container dependencies to ci-pkg target
2025-04-23 19:11:58 -06:00
Jeremy Soller
5e2bc43891
Build installer and redoxfs for host outside of podman
2025-04-23 17:40:56 -06:00
Jeremy Soller
b580423f76
Make image directory for server/desktop/demo targets
2025-04-23 15:42:09 -06:00
Jeremy Soller
058b402bfc
Set sysroot date after finishing build
2025-04-23 15:38:46 -06:00
Jeremy Soller
5e4d5af2f9
Revert "Make sure repo.tag is built before harddrive.img and livedisk.iso in ci-img"
...
This reverts commit d6f1dbf284 .
2025-04-23 15:38:21 -06:00
Jeremy Soller
cecae079fc
Fix repo build with podman
2025-04-23 15:38:03 -06:00
Jeremy Soller
d6f1dbf284
Make sure repo.tag is built before harddrive.img and livedisk.iso in ci-img
2025-04-23 15:29:33 -06:00
Jeremy Soller
d4626b6f1e
Do not use podman for image recipes
2025-04-23 10:21:18 -06:00
Jeremy Soller
f4fe37478f
Minor cleanup of fstools
2025-04-23 09:33:25 -06:00
Jeremy Soller
dd484d3767
Disable appstream generation for CI until fixed inside podman
2025-04-21 14:58:30 -06:00
Jeremy Soller
a75fc7ea77
Drop PREFER_STATIC from makefiles
2025-04-18 10:44:49 -06:00
Jeremy Soller
eb00e7db8c
Fix ci targets when using podman
2025-04-18 09:11:36 -06:00
Jeremy Soller
5e3bcaee08
Add custom target for compiling relibc-freestanding for riscv64gc
2025-04-17 10:10:29 -06:00
bjorn3
35b9b69c6d
Fix qemu config for multi-head gpu
...
The old config would create two separate VGA compatible graphics
adapters. Redox currently only supports this when the firmware
initializes both graphics adapters as boot framebuffers. Only UEFI
supports this however. Using a single multi-head virtio-gpu graphics
adapter makes it work on BIOS too.
2025-03-02 20:43:51 +01:00
Vincent Berthier
4573edcc16
Add shell and build environment for NixOS
2025-02-18 22:23:42 +00:00
Leandro Santiago
dcb884549a
Allow building when SELinux is not used
...
Add `USE_SELINUX` variable to `make all`
2025-02-12 20:30:06 +01:00
Anhad Singh
78a2aa75dd
fix(mk/ci.mk): set COOKBOOK_HOST_SYSROOT and COOKBOOK_PREFER_STATIC
...
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-02-05 02:33:19 +11:00
Ron Williams
bd772d5b97
Add path to fetch.tag
2025-01-26 22:32:37 +00:00
Jeremy Soller
2e8196ae5e
Merge branch 'dynamic_linking' into 'master'
...
fear(repo.mk): PREFER_STATIC
See merge request redox-os/redox!1540
2025-01-20 19:55:22 +00:00
Anhad Singh
cd911d16df
fear(repo.mk): PREFER_STATIC
...
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-01-20 23:15:19 +11:00
Jeremy Soller
cde151ccb7
Drop rust freestanding step
2025-01-14 12:28:58 -07:00
Jeremy Soller
74f0a0eea1
Merge branch 'dynamic_linking' into 'master'
...
feat(prefix): set default hash style to GNU
See merge request redox-os/redox!1537
2025-01-11 18:39:40 +00:00
Ron Williams
0bf3a56fea
Add 'touch sysroot' after copy of relibc-install
2025-01-09 16:15:58 -08:00
Anhad Singh
48ca562cf1
feat(prefix): set default hash style to GNU
...
Our dynamic linker supports it.
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2025-01-09 20:20:21 +11:00
Anhad Singh
34153db14d
fix(prefix.mk): gcc-freestanding
...
Build libgcc (relibc needs it) and disable shared.
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-27 23:23:31 +11:00
Jeremy Soller
b812780a54
Merge branch 'dynamic_linking' into 'master'
...
fix(mk/prefix.mk): fix libtool build
See merge request redox-os/redox!1531
2024-12-22 02:21:36 +00:00
Anhad Singh
a7c06e9b72
fix(mk/prefix.mk): fix libtool build
...
Worked for me before as I had the old sources. Now the ltversion should
be correct and libtool should be correctly built.
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-21 20:28:11 +11:00
Jeremy Soller
0be6bddbb8
Merge branch 'dynamic_linking' into 'master'
...
fix(libtool): correct ltversion
See merge request redox-os/redox!1530
2024-12-20 14:25:52 +00:00
Anhad Singh
f8d2c7ed4b
fix(mk/prefix.mk): correct ltversion
...
The script `build-aux/git-version-gen` needs sufficient depth to
correctly determine the version. Also it has to be in tree, otherwise
the version is reported as 'UNKNOWN', breaking some packages.
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-21 01:09:52 +11:00
Jeremy Soller
01737d8537
Merge branch 'qemu-rasp' into 'master'
...
Fix make qemu rasperry pi 3b emulation
See merge request redox-os/redox!1528
2024-12-18 18:19:07 +00:00
Andrey Turkin
6205eafd4c
Fix make qemu rasperry pi 3b emulation
2024-12-16 06:50:21 +03:00
Anhad Singh
6450defff0
fix(repo.mk): set COOKBOOK_HOST_SYSROOT
...
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-12 00:13:27 +11:00
Anhad Singh
008160036d
feat(prefix): libtool
...
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-02 22:21:45 +11:00
Ron Williams
e9628b64d8
Fix CI, add packages to ci.toml so desktop can build from binaries
2024-11-21 15:06:54 +00:00
Jeremy Soller
9d789178be
Make it possible to set qemu machine for aarch64
2024-10-29 08:52:10 -06:00
Jeremy Soller
ac8efee64a
Build docgen and pkgar as part of fstools
2024-10-19 16:53:33 -06:00
Jeremy Soller
d79cc14f6a
Generate appstream data when building repo via CI
2024-10-15 21:14:30 -06:00
Andrey Turkin
03633046cc
Riscv64gc support in the build scripts
...
This architecture is different from x86/aarch because its rust triplet (riscv64gc-...) differs from gcc/llvm/binutils triplet (more general riscv64-...). Therefore the build scripts have to bridge that mismatch.
This introduces new build-time environment variable GNU_TARGET which corresponds to a target used by C world utilities whereas existing TARGET now describes rust target.
2024-09-30 10:28:37 +03:00
Ribbon
56b3efa7b6
Enable Podman by default
2024-09-20 21:00:16 +00:00
IncompententPirate
ad7733c7a1
Clarify error message by adding double quotes around 'just' to reduce confusion in mk/depends.mk
2024-09-06 09:40:41 +00:00
Ron Williams
fd40776d35
Fix CI to avoid RedoxFS/FUSE/tar problems
2024-08-28 12:55:25 -07:00
Ron Williams
f51dee2ea1
Make installer compile on host, list_packages compile in Podman when PODMAN_BUILD=1
2024-08-17 23:59:37 +00:00
Ron Williams
c0ccfc1572
Don't run fetch if rebuildinga
2024-08-05 11:46:18 -07:00
Ribbon
8cd0b1af0f
Rename two make options to a correct name
2024-07-20 00:47:36 +00:00
Ribbon
49102f6332
Add explanation comments on the build system files
2024-07-09 12:58:07 +00:00
Jeremy Soller
db2da8206e
Clarify qemu argument for ata disk
2024-06-14 08:59:39 -06:00
bjorn3
1448667c3d
Replace separate targets for each disk kind with a make flag
...
A command like `make qemu_nvme` will become `make qemu disk=nvme` with
this change.
Also add support for selecting a virtio-blk disk and remove the
*_no_build targets as they didn't do anything different from the regular
targets anyway.
2024-06-13 17:17:57 +02:00
Jeremy Soller
50c9d3d2ce
Use separate copy of relibc for freestanding
2024-05-11 15:42:00 -06:00
Jeremy Soller
f9823473e2
Use target-specific folder for relibc source for freestanding build
2024-05-11 14:37:47 -06:00
Jeremy Soller
a393103334
use usb-tablet instead of usb-mouse for qemu aarch64
2024-05-08 13:08:54 -06:00
Jeremy Soller
f474b4cfb9
Disable binary prefix when not building on x86_64 Linux
2024-05-06 11:35:23 -06:00
Ron Williams
b5f22bd20f
Make QEMU smp and mem options configurable
2024-04-04 13:08:10 +00:00
Jeremy Soller
ff74ae6681
Use qemu-xhci for usb on aarch64
2024-03-25 14:29:10 -06:00
bjorn3
40305c7980
Use U-Boot with QEMU again if efi=no is used
...
Also add a nicer error message when the firmware package is not
installed.
2024-03-20 15:43:53 +01:00
Jeremy Soller
0e892b725f
Use AAVMF for qemu virt
2024-03-19 20:28:48 -06:00
bjorn3
7043e9e932
Prevent the build cache for the installer getting clobbered
...
Previously it was getting built by two different toolchains (nightly
from rustup and the relibc prefix) Also some env vars differed between
both invocations causing blake3 and sodiumoxide to get rebuilt.
2024-03-17 18:54:24 +01:00
Jeremy Soller
c959953e0a
Use REPO_NONSTOP in ci.mk
2024-01-28 16:17:07 +00:00
bjorn3
69364ba176
Only enable -d cpu_reset for qemu when debugging
...
It is only useful when debugging and otherwise just throws a whole bunch
of logs on every boot.
2024-01-25 15:22:03 +01:00
Jeremy Soller
33769cd851
Allow any just version
2024-01-12 13:04:29 -07:00
bjorn3
aa7edc6ef1
Zstd compress all images
...
I tried gzip, bzip2, xz and xzstd. Xz 22s for a 128MB disk image. Out of
all other options zstd was both the fastest to compress (<1s) and
produced the smallest file (28MB).
2024-01-11 21:18:21 +01:00
Jeremy Soller
dac858b84e
Default to using kvm when arch is i686 and host is x86_64
2024-01-11 09:55:54 -07:00
Jeremy Soller
17e3c17c73
Do not use prefix rustc to determine host target
2024-01-10 11:08:31 -07:00
Jeremy Soller
7de457e022
Ensure lib/rustlib/HOST_TARGET/lib exists in prefix tarballs
2024-01-10 09:53:13 -07:00
bjorn3
34acc9cb04
Don't checkout rust submodule by default
...
It is no longer necessary for regular builds as of the previous commit.
This will drastically improve the time it takes to do the initial clone
of redox.
2024-01-10 15:19:06 +01:00
bjorn3
da380dd368
Don't rebuild lib/rustlib/src in the rust sysroot
...
The prebuilt tarball already contains it now
2024-01-09 11:05:06 +01:00
bjorn3
5ce30e6da6
Somewhat simplify config.mk
...
* nproc exists on FreeBSD too
* REDOX_MAKE is generally make, so use that as default with per-OS
override if necessary.
* HOST_TARGET can be fetched directly from rustc.
2024-01-08 19:24:14 +01:00
bjorn3
cf04f50d86
Use sparse files for the generated disk images on all OSes
...
Rather than just on macOS. This can save quite a bit of space depending
on the amount of free space on the root filesystem of the disk image.
2024-01-08 19:09:51 +01:00
Jeremy Soller
0427420717
Use installer to resolve filesystem size
2024-01-04 12:22:43 -07:00
Jeremy Soller
27c3d69aed
Merge branch 'sparse_extra' into 'master'
...
Use sparse allocation of extra.img on Linux too
See merge request redox-os/redox!1391
2024-01-03 19:23:46 +00:00
Ron Williams
6258becc3c
add nonstop, uc and ucf to build, plus scripts include-recipes.sh and show-package.sh
2024-01-03 19:15:30 +00:00
bjorn3
ffd64a8703
Use sparse allocation of extra.img on Linux too
...
fallocate immediately allocates the full size of the file, even though
it likely won't end up being used.
2023-12-17 12:44:32 +01:00
Ivan Tan
097c6876bf
add raspi3b config
2023-12-17 10:16:42 +08:00
Jeremy Soller
1afef4aef0
Merge branch 'ivan/board_var' into 'master'
...
aarch64: support building Redox for different motherboard.
See merge request redox-os/redox!1388
2023-12-15 23:18:38 +00:00
4lDO2
e3013ac40b
Add checks and install cbindgen in bootstrap.sh.
2023-12-14 15:32:54 +01:00
Ivan Tan
584e6fb548
aarch64: support building Redox for different motherboard.
2023-12-14 12:29:20 +00:00
Jeremy Soller
fb1478d9bf
Replace rebuild-recipe with make cr.recipe and make ucr.recipe
2023-12-13 14:41:38 -07:00
Jeremy Soller
7bec121856
Fix clean prefix build
2023-12-13 12:10:42 -07:00