Compare commits

...

106 Commits

Author SHA1 Message Date
Ribbon
3c0a0be993 Merge branch 'orbital-envivars' into 'master'
Draft: Small changes to ion and bash config

See merge request redox-os/redox!2203
2026-11-04 07:09:18 -03:00
Ribbon
7aaea1939c Merge branch 'missing-descriptions' into 'master'
Recipe fixup: Fix errors in recipe files, add descriptions for all non-WIP

See merge request redox-os/redox!2363
2026-11-03 17:21:41 -03:00
Andi McClure
05b9e05023 Recipe fixup: Fix errors in recipe files, add descriptions for all non-WIP 2026-11-03 17:21:41 -03:00
Jeremy Soller
5313cbba62 Merge branch 'strip-ar' into 'master'
cookbook: Also strip ar files

See merge request redox-os/redox!2427
2026-11-02 18:45:37 -07:00
Wildan M
559496cb6d
cookbook: Fix test 2026-11-03 08:23:09 +07:00
Wildan M
4006aee0bf
cookbook: Also strip ar files 2026-11-03 08:19:14 +07:00
Jeremy Soller
da760947f1 Merge branch 'verbosity' into 'master'
cookbook: Adjustable script verbosity and cleaner strip

See merge request redox-os/redox!2426
2026-11-02 18:00:17 -07:00
Jeremy Soller
28f5c3d7cb Merge branch 'prune-fail' into 'master'
cookbook: Don't always prune sysroot with clean-target enabled

See merge request redox-os/redox!2425
2026-11-02 17:46:28 -07:00
Jeremy Soller
4639c04454 Merge branch 'openssl-update' into 'master'
Update curl, openssl3 and nghttp2

See merge request redox-os/redox!2424
2026-11-02 17:43:36 -07:00
Jeremy Soller
3650a613f3 Merge branch 'python315-update' into 'master'
Update python315

See merge request redox-os/redox!2421
2026-11-02 17:42:34 -07:00
Jeremy Soller
d2abc86a7c Merge branch 'ffmpeg-update' into 'master'
Update ffmpeg6 and add ffmpeg9

See merge request redox-os/redox!2420
2026-11-02 17:42:22 -07:00
Jeremy Soller
c33cf12401 Merge branch 'pipelines' into 'master'
docs: Mention how MR pipelines work

See merge request redox-os/redox!2419
2026-11-02 17:42:04 -07:00
Jeremy Soller
f236d86e60 Merge branch 'meson' into 'master'
Port meson

See merge request redox-os/redox!2416
2026-11-02 17:41:33 -07:00
Wildan M
e684b923d1
cookbook: Adjustable script verbosity and cleaner strip 2026-11-03 07:30:21 +07:00
Wildan M
31b4282059
cookbook: Don't always prune sysroot with clean-target enabled 2026-11-03 06:12:25 +07:00
Jeremy Soller
721493ad46 Merge branch 'nix-fixes' into 'master'
nix: Fix stripping

See merge request redox-os/redox!2418
2026-11-02 08:32:12 -07:00
Wildan M
c57bba090a
Update curl, openssl3 and nghttp2 2026-11-02 20:44:57 +07:00
Wildan M
9bf257dbab
Update python315 2026-11-02 17:55:21 +07:00
Wildan M
b7352eecfd
Update ffmpeg6 and add ffmpeg9 2026-11-02 17:52:11 +07:00
Wildan M
d15b5f9220
docs: Mention how MR pipelines work 2026-11-02 17:19:32 +07:00
Konstantin Shabanov
aa6f01bfb2 nix: Drop autoreconf2.69 workaround 2026-11-02 14:30:37 +07:00
Konstantin Shabanov
7992e91522 nix: Fix stripping
Reduces prefix size from 7.6G to 3.1G.
2026-11-02 14:30:35 +07:00
Wildan Mubarok
604f1187b2 Merge branch 'cosmic-mon' into 'master'
Add cosmic-monitor to ci.toml

See merge request redox-os/redox!2417
2026-11-02 04:28:09 +00:00
Wildan M
8aa1de9e1a
Add cosmic-monitor to ci.toml 2026-11-01 21:08:17 +07:00
Jeremy Soller
51ca58cc2b Merge branch 'install-places' into 'master'
Improve install for bzip2, cmake, termcap, tcl, libicu, mupdf

See merge request redox-os/redox!2414
2026-11-01 06:09:04 -07:00
Wildan M
858a19e150
Port meson 2026-11-01 19:17:59 +07:00
Wildan M
84eae1e507
Improve install for bzip2, cmake, termcap, tcl, libicu, mupdf 2026-11-01 13:35:01 +07:00
Jeremy Soller
9007d0a29f Format demo and jeremy configs the same 2026-10-30 14:03:40 -06:00
Jeremy Soller
aa01491b88 Add cosmic-monitor and gtk3 to demo, compile glib schemas in demo on boot 2026-10-30 12:26:24 -06:00
Jeremy Soller
6c094d1376 Merge branch 'gitup' into 'master'
Update git with workaround

See merge request redox-os/redox!2413
2026-10-30 12:07:38 -06:00
Jeremy Soller
bebe444ca8 Merge branch 'lazygit' into 'master'
Port lazygit

See merge request redox-os/redox!2412
2026-10-30 06:04:00 -06:00
Wildan M
617d3c35b5
Update git with workaround 2026-10-30 04:35:28 +07:00
Wildan M
23b3e6f991
Port lazygit and also add golang to CI 2026-10-30 00:04:51 +07:00
Jeremy Soller
70a3f9e16e Merge branch 'umask_022' into 'master'
Set umask to 022 while building disk images

See merge request redox-os/redox!2411
2026-10-28 20:05:25 -06:00
bjorn3
2f62f6d876 Set umask to 022 while building disk images
This matches the default umask that would actually be used at runtime.
It ensures only the owner has write permissions to system files and
directories rather than owner and group. The Arti tor implementation
checks that /home is not writable for anyone other than the owner.
2026-10-28 20:52:50 +01:00
Jeremy Soller
40544cdbae Merge branch 'llvm-unwind' into 'master'
Enable libunwind and disable compiler-rt

See merge request redox-os/redox!2410
2026-10-28 13:41:17 -06:00
Wildan Mubarok
ba6258aad3 Merge branch 'ratatui-rev' into 'master'
Partially revert ratatui update

See merge request redox-os/redox!2409
2026-10-28 08:53:51 +00:00
Wildan M
dc63352e5e
Enable libunwind and disable compiler-rt 2026-10-28 12:11:53 +07:00
Wildan M
fcc8970b16
Partially revert ratatui update
This reverts commit c9f937eec8.
2026-10-28 11:28:48 +07:00
Jeremy Soller
a354367247 Merge branch 'update-deps' into 'master'
Update deps

See merge request redox-os/redox!2390
2026-10-27 18:03:53 -06:00
Jeremy Soller
e50ed2eb66 Merge branch 'wasi-ld' into 'master'
wasi-libc: Fix linker problem

See merge request redox-os/redox!2400
2026-10-27 18:03:36 -06:00
Jeremy Soller
187f936c8f Merge branch 'prefix-fetch' into 'master'
prefix: Fetch prefix sources early

See merge request redox-os/redox!2399
2026-10-27 18:01:59 -06:00
Jeremy Soller
fac2ee9305 Merge branch 'gnugrep-patch' into 'master'
remove rlimit part of gnu-grep patch

See merge request redox-os/redox!2404
2026-10-27 13:12:51 -06:00
Jeremy Soller
1a37a6a64a Merge branch 'update-rsync' into 'master'
update rsync from 3.4.1 to 3.5.1

See merge request redox-os/redox!2403
2026-10-27 13:12:45 -06:00
Jeremy Soller
f97869cd84 Merge branch 'fseterr' into 'master'
remove nano patch, update and fix gzip

See merge request redox-os/redox!2405
2026-10-27 13:11:19 -06:00
Jeremy Soller
885b233498 Merge branch 'go-update' into 'master'
Update Go

See merge request redox-os/redox!2406
2026-10-27 13:08:08 -06:00
Jeremy Soller
d6644d7088 Merge branch 'determ-prefix' into 'master'
prefix: Make toolchain deterministic

See merge request redox-os/redox!2407
2026-10-27 08:22:57 -06:00
auronandace
3da4df6eeb add gzip to CI 2026-10-27 08:37:16 +00:00
Wildan M
e0e5950298
prefix: Make toolchain deterministic 2026-10-27 07:02:13 +07:00
Wildan M
fbcabac0c5
Update go 2026-10-27 02:30:28 +07:00
auronandace
9e456cf920 remove nano patch, update and fix gzip 2026-10-26 14:52:21 +00:00
auronandace
61a3304f07 remove rlimit part of gnu-grep patch 2026-10-26 10:06:45 +00:00
auronandace
d70ae57bb9 update rsync from 3.4.1 to 3.5.1 2026-10-26 09:29:06 +00:00
Jacob Lorentzon
524b220ef2 Merge branch 'remove-lz4-patch' into 'master'
remove lz4 patch

See merge request redox-os/redox!2401
2026-10-25 22:42:36 +01:00
Ribbon
e079d707b8 Update more recipes and TODOs 2026-10-24 14:09:13 -03:00
Ribbon
ee828cd325 Add and update recipes 2026-10-24 13:20:41 -03:00
auronandace
98ad0a8752 remove lz4 patch 2026-10-23 14:49:41 +01:00
Jeremy Soller
4338ac2413 Merge branch 'wasi' into 'master'
Add compiler wasm option

See merge request redox-os/redox!2395
2026-10-22 09:02:52 -06:00
Wildan M
c9f937eec8
Update deps 2026-10-22 10:45:38 +07:00
Wildan M
df7986b858
wasi-libc: Fix linker problem 2026-10-22 10:31:20 +07:00
Wildan M
6384beb961
prefix: Fetch prefix sources early 2026-10-22 10:25:27 +07:00
Jeremy Soller
abd771a5e9 Merge branch 'lto-strip' into 'master'
cookbook: Add LTO plugin to strip

See merge request redox-os/redox!2398
2026-10-21 10:23:22 -06:00
Jeremy Soller
616353e91e Merge branch 'gcc-toolchain' into 'master'
Fix gcc toolchain due to package deps

See merge request redox-os/redox!2397
2026-10-21 10:22:42 -06:00
Jeremy Soller
0fa90fc07a Merge branch 'remove-rlimit-patch' into 'master'
remove no_rlimit patch from patch package

See merge request redox-os/redox!2394
2026-10-21 10:17:47 -06:00
Jeremy Soller
9224020a92 Merge branch 'xz-threads' into 'master'
xz: Enable threads

See merge request redox-os/redox!2391
2026-10-21 10:16:16 -06:00
Jeremy Soller
1961e941e0 Merge branch 'scriptisto' into 'master'
Fix compilation for scriptisto

See merge request redox-os/redox!2392
2026-10-21 10:16:08 -06:00
Jeremy Soller
3f90e9232c Merge branch 'python-ioctl' into 'master'
python: Fix ioctl arg type

See merge request redox-os/redox!2393
2026-10-21 10:15:59 -06:00
Wildan M
0e1c602c62
Add compiler wasm option 2026-10-21 14:22:16 +07:00
Wildan M
b4f6410529
cookbook: Add LTO plugin to strip 2026-10-21 04:27:29 +07:00
Wildan Mubarok
7a75f65f6a Merge branch 'rustc' into 'master'
Fix rust compilation

See merge request redox-os/redox!2396
2026-10-20 08:30:26 +00:00
Wildan M
88a892572d
Fix gcc toolchain due to package deps 2026-10-20 14:33:43 +07:00
auronandace
c01b9c8d10 remove no_rlimit patch from patch package 2026-10-16 11:34:03 +01:00
Wildan M
795aa87b72
Fix rust compilation 2026-10-16 17:30:02 +07:00
Wildan M
8cfa74baa5
python: Fix ioctl arg type 2026-10-15 15:02:07 +07:00
Wildan M
1c7b0aa576
Fix compilation for scriptisto 2026-10-15 14:59:40 +07:00
Wildan M
aac8e49f5f
xz: Enable threads 2026-10-15 14:56:16 +07:00
Ribbon
332fb5e785 Fix and update more recipes 2026-10-12 19:29:36 -03:00
Ribbon
b133e5cbc1 Move many wip recipes 2026-10-12 16:58:46 -03:00
Ribbon
b447343350 Fix and update many more recipes, and remove unnecessary recipes 2026-10-12 16:17:42 -03:00
Ribbon
003f6ce9d1 Fix and update many more recipes 2026-10-12 11:01:56 -03:00
Ribbon
cf5df97e85 Fix and update more recipes 2026-10-11 16:01:52 -03:00
Ribbon
21008dcf21 Fix and update many more recipes 2026-10-11 13:06:09 -03:00
Ribbon
66edc7a917 Add zonetimeline recipe 2026-10-11 05:21:15 -03:00
Ribbon
6921e5bb67 Fix and update many recipes 2026-10-10 12:54:44 -03:00
Jeremy Soller
445c556af6 Merge branch 'deps-real' into 'master'
cookbook: Apply rules before deriving build deps

See merge request redox-os/redox!2389
2026-10-09 15:15:56 -06:00
Jeremy Soller
65dd80c331 Merge branch 'gimp' into 'master'
Port GIMP

See merge request redox-os/redox!2241
2026-10-09 13:00:15 -06:00
Wildan Mubarok
5add974b86 Apply 1 suggestion(s) to 1 file(s) 2026-10-09 11:26:59 +00:00
Wildan Mubarok
45dc9463fb Apply 1 suggestion(s) to 1 file(s) 2026-10-09 11:25:12 +00:00
Wildan Mubarok
71a87aa750 Apply 1 suggestion(s) to 1 file(s) 2026-10-08 22:11:06 +00:00
Ribbon
72f0a39083 Fix and improve many recipes 2026-10-08 15:52:17 -03:00
Ribbon
76b1de0c65 Fix and remove more recipes, and update more TODOs 2026-10-08 13:11:41 -03:00
Wildan Mubarok
79482cbab1 Apply 1 suggestion(s) to 1 file(s)
Co-authored-by: Ribbon <ribbon_45@proton.me>
2026-10-08 10:57:35 +00:00
Jeremy Soller
ec2ec281d8 Merge branch 'wasmtime-update' into 'master'
update wasmtime from v36 to v49

See merge request redox-os/redox!2386
2026-10-07 10:15:31 -06:00
Jeremy Soller
a212301301 Merge branch 'update-servo' into 'master'
Update servo to 0.7.0

See merge request redox-os/redox!2387
2026-10-07 10:14:29 -06:00
auronandace
013707b465 update wasmtime from v36 to v49 2026-10-06 13:52:38 +01:00
Jeremy Soller
54ad8740ad Merge branch 'nproc' into 'master'
Fix missing nproc

See merge request redox-os/redox!2385
2026-10-06 06:35:45 -06:00
Ribbon
e2a4098aa1 Add, fix, update some recipes and remove abandoned recipes 2026-10-06 07:00:07 -03:00
Wildan M
a01dc721cd
cookbook: Apply rules before deriving build deps 2026-10-06 14:21:12 +07:00
Wildan M
8ca6693b9d
Update GIMP launcher 2026-10-06 06:30:55 +07:00
Wildan M
4a1d58323a
Port GIMP 2026-10-06 06:23:30 +07:00
Wildan M
27881074c3
Update servo to 0.7.0 2026-10-05 10:02:45 +07:00
Wildan M
73542ee0d5
Fix missing nproc 2026-10-04 09:32:07 +07:00
Ribbon
0ff32cb64e Move ion config file 2026-06-22 05:02:19 -03:00
Ribbon
39301c21bf Apply 2 suggestion(s) to 2 file(s)
Co-authored-by: Wildan Mubarok <willnode@wellosoft.net>
2026-06-22 05:00:38 -03:00
Ribbon
958fd719c6 Add alias to bash config 2026-06-22 03:49:58 -03:00
Ribbon
256c414a9b Small changes to ion and bash config 2026-06-22 03:42:50 -03:00
739 changed files with 3896 additions and 1706 deletions

View File

@ -141,6 +141,10 @@ You can see all open issues on [this](https://gitlab.redox-os.org/groups/redox-o
Please follow [our process](https://doc.redox-os.org/book/creating-proper-pull-requests.html) for creating proper pull requests.
### Pull Requests Pipelines
The GitLab CI pipelines is runnable only by maintainer review, otherwise it will be seen as "stuck". Please don't hesitate to ask in Matrix for triggering CI pipelines after being reviewed.
## Important Places to Contribute
Before starting to contribute, we recommend reading the [General FAQ](https://www.redox-os.org/faq/) and the [Redox Book](https://doc.redox-os.org/book/).

619
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -48,7 +48,7 @@ redoxer = { git = "https://gitlab.redox-os.org/redox-os/redoxer.git", default-fe
regex = "1.11"
serde = { version = "1", features = ["derive"] }
termion = "4"
toml = "0.8"
toml = "1"
walkdir = "2.3.1"
ansi-to-tui = { version = "8", optional = true }
strip-ansi-escapes = { version = "0.2.1", optional = true }

View File

@ -62,6 +62,7 @@ coreutils = {}
cosmic-edit = {}
cosmic-files = {}
cosmic-icons = {}
cosmic-monitor = {}
cosmic-reader = {}
cosmic-term = {}
cosmic-text = {}
@ -100,15 +101,18 @@ generaluser-gs = {}
gettext = {}
gigalomania = {}
git = {}
gimp = {}
glib = {}
glutin = {}
gnu-binutils = {}
gnu-grep = {}
gnu-make = {}
go = {}
goaccess = {}
gobject-introspection = {}
gitoxide = {}
gstreamer = {}
gzip = {}
harfbuzz = {}
hicolor-icon-theme = {}
helix = {}
@ -124,6 +128,7 @@ intel-one-mono = {}
ion = {}
kernel = {}
kibi = {}
lazygit = {}
lci = {}
libarchive = {}
libatomic = {}
@ -171,6 +176,7 @@ mesa = {}
mesa-glu = {}
mesa-demos = {}
mesa-demos-x11 = {}
meson = {}
mgba = {}
miniserve = {}
mpc = {}
@ -256,6 +262,7 @@ rustual-boy = {}
rusty-checkers = {}
rusty-rain = {}
rvvm = {}
scriptisto = {}
scummvm = {}
sdl-gfx = {}
sdl1 = {}

View File

@ -11,6 +11,7 @@ filesystem_size = 3000
[packages]
# GUI Apps
cosmic-monitor = {}
cosmic-reader = {}
periodictable = {}
servo = {}
@ -29,13 +30,11 @@ vim = {}
wget = {}
# Emulators
dosbox = {}
mednafen = {}
flycast = {}
# Games
freedoom = {}
neverball = {}
prboom = {}
@ -44,6 +43,7 @@ sopwith = {}
syobonaction = {}
# Demos
gtk3 = {}
nushell = {}
orbclient = {}
pixelcannon = {}
@ -57,6 +57,12 @@ softbuffer = {}
# MIDI
freepats = {}
[[files]]
path = "/usr/lib/init.d/20_glib"
data = """
glib-compile-schemas /usr/share/glib-2.0/schemas/
"""
[[files]]
path = "/home/user/Welcome.txt"
data = """

View File

@ -5,23 +5,25 @@ include = ["demo.toml"]
# General settings
[general]
# Filesystem size in MiB
filesystem_size = 8192
filesystem_size = 16384
# Package settings
[packages]
# apps
# GUI Apps
#boxedwine = {}
cosmic-player = {}
cosmic-reader = {}
cosmic-settings = {}
cosmic-store = {}
cosmic-term = {}
cosmic-text = {}
#cosmic-player = {}
#cosmic-settings = {}
#cosmic-store = {}
#qemu = {} # not building
schismtracker = {}
servo = {}
# cli
# GUI Data
jeremy = {}
noto-color-emoji = {}
ttf-hack = {}
# Terminal Apps
cleye = {}
ffmpeg6 = {}
lua54 = {}
@ -34,26 +36,54 @@ sed = {}
shellharden = {}
xz = {}
# demos
# Emulators
mgba = {}
#retroarch = {} # need to package cores
rs-nes = {} # need game for testing
rust64 = {} # need roms
rustual-boy = {} # need game for testing
scummvm = {} # need game for testing
#vice = {} # broken on new toolchain
# Games
devilutionx = {}
eduke32 = {}
freeciv = {}
gigalomania = {}
love = {}
mednaffe = {}
openjazz = {}
openjk = {}
openttd = {}
openttd-opengfx = {}
openttd-openmsx = {}
openttd-opensfx = {}
quakespasm = {}
sm64ex = {}
#spacecadetpinball = {} # not building
#vvvvvv = {} # cannot find -lgcc_s
# Demos
#cairodemo = {}
cmatrix = {}
cpal = {}
gears = {}
glutin = {}
#glutin = {}
#hematite = {} # not building
iced = {}
libcosmic = {}
osdemo = {} # does not show anything
#libcosmic = {}
#osdemo = {} # does not show anything
#pathfinder = {} # not building
procedural-wallpapers-rs = {}
#rust-cairo = {}
#rust-cairo-demo = {}
sdl2-gears = {}
vttest = {}
#webrender = {}
winit = {}
# dev
# MIDI
generaluser-gs = {}
timidity = {}
# Development
autoconf = {}
automake = {}
#cookbook = {}
@ -63,38 +93,4 @@ gnu-make = {}
nasm = {}
patch = {}
pkg-config = {}
rust = {}
# games
devilutionx = {}
eduke32 = {}
flycast = {}
freeciv = {}
gigalomania = {}
love = {}
mednafen = {}
mgba = {}
openjazz = {}
openjk = {}
openttd = {}
openttd-opengfx = {}
openttd-openmsx = {}
openttd-opensfx = {}
quakespasm = {}
#retroarch = {} # need to package cores
rs-nes = {} # need game for testing
rust64 = {} # need roms
rustual-boy = {} # need game for testing
scummvm = {} # need game for testing
sm64ex = {}
#spacecadetpinball = {} # not building
syobonaction = {}
#vice = {} # broken on new toolchain
#vvvvvv = {} # cannot find -lgcc_s
# stuff
generaluser-gs = {}
jeremy = {}
noto-color-emoji = {}
timidity = {}
ttf-hack = {}
#rust = {}

View File

@ -104,14 +104,13 @@
#TODO: This isn't tested yet, use at your own risk
native = (pkgs.mkShell.override { stdenv = pkgs.gcc14Stdenv; }) rec {
nativeBuildInputs =
let
autoreconf269 = pkgs.writeShellScriptBin "autoreconf2.69" "${pkgs.autoconf269}/bin/autoreconf";
in
with pkgs;
[
(pkgs.writeShellScriptBin "${pkgs.stdenv.hostPlatform.system}-gnu-strip" ''
${pkgs.bintools-unwrapped}/bin/strip $@
'')
ant
autoconf
autoreconf269 # gnu-binutils
autoconf269
automake
bison
cmake

View File

@ -58,14 +58,14 @@ ifeq ($(PODMAN_BUILD),1)
else
$(MAKE) PREFIX_BINARY=0 \
"prefix/$(TARGET)/gcc-install.tar.gz" \
"prefix/$(TARGET)/relibc-install.tar.gz" \
"prefix/$(TARGET)/rust-install.tar.gz" \
"prefix/$(TARGET)/clang-install.tar.gz"
"prefix/$(TARGET)/clang-install.tar.gz" \
"prefix/$(TARGET)/relibc-install.tar.gz"
rm -rf "build/toolchain/$(HOST_TARGET)/$(TARGET)"
mkdir -p "build/toolchain/$(HOST_TARGET)/$(TARGET)"
cp "prefix/$(TARGET)/gcc-install.tar.gz" "build/toolchain/$(HOST_TARGET)/$(TARGET)/gcc-install.tar.gz"
cp "prefix/$(TARGET)/relibc-install.tar.gz" "build/toolchain/$(HOST_TARGET)/$(TARGET)/relibc-install.tar.gz"
cp "prefix/$(TARGET)/rust-install.tar.gz" "build/toolchain/$(HOST_TARGET)/$(TARGET)/rust-install.tar.gz"
cp "prefix/$(TARGET)/clang-install.tar.gz" "build/toolchain/$(HOST_TARGET)/$(TARGET)/clang-install.tar.gz"
cp "prefix/$(TARGET)/relibc-install.tar.gz" "build/toolchain/$(HOST_TARGET)/$(TARGET)/relibc-install.tar.gz"
cd "build/toolchain/$(HOST_TARGET)/$(TARGET)" && sha256sum -b * > SHA256SUM
endif

View File

@ -13,7 +13,7 @@ else
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
umask 022 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $@.partial
mv $@.partial $@
endif
@ -29,7 +29,7 @@ else
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
umask 022 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) --write-bootloader="$(BUILD)/bootloader-live.efi" --live $@.partial
mv $@.partial $@
cp redox.ipxe $(BUILD)/redox.ipxe
endif
@ -52,7 +52,7 @@ else
$(REDOXFS) $@.partial $(MOUNT_DIR)
sleep 1
pgrep redoxfs
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $(MOUNT_DIR)
umask 022 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $(MOUNT_DIR)
sync
-$(FUMOUNT) $(MOUNT_DIR) || true
rm -rf $(MOUNT_DIR)

View File

@ -99,6 +99,8 @@ $(PREFIX)/relibc-install.tar.gz: $(PREFIX)/sysroot
tar \
--create \
--gzip \
--sort=name \
--mtime='@0' \
--file "$@" \
--directory="$<" \
.
@ -205,10 +207,14 @@ $(PREFIX)/%.tar.gz: $(PREFIX)/%
tar \
--create \
--gzip \
--sort=name \
--mtime='@0' \
--file "$@" \
--directory="$<" \
.
PREFIX_FETCH_TAG=$(PREFIX)/fetch.tag
# BUILD GCC ---------------------------------------------------
$(PREFIX)/libtool-install: | $(FSTOOLS_TAG) $(CONTAINER_TAG)
ifeq ($(PODMAN_BUILD),1)
@ -228,7 +234,26 @@ else
mv "$@.partial" "$@"
endif
$(PREFIX)/binutils-install: | $(PREFIX)/libtool-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
# libtool may be used during autoconf, so this depends after building libtool
# it is fine to skip this, but this is used to fail early if sources fail due to autoconf
$(PREFIX_FETCH_TAG): | $(PREFIX)/libtool-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@echo "\033[1;36;49mFetching prefix sources\033[0m"
rm -f "$@"
export $(PREFIX_CONFIG) COOKBOOK_LIBTOOL_DIR=$(LIBTOOL_PATH) PATH="$(ROOT)/$(PREFIX)/libtool-install/bin:$$PATH" \
COOKBOOK_HOST_SYSROOT=/usr COOKBOOK_CROSS_TARGET=$(TARGET) COOKBOOK_CROSS_GNU_TARGET=$(GNU_TARGET) && \
$(REPO_BIN) fetch host:binutils-gdb host:gcc13 host:llvm21 relibc
ifneq ($(PREFIX_USE_UPSTREAM_RUST_COMPILER),1)
export $(PREFIX_CONFIG) COOKBOOK_LIBTOOL_DIR=$(LIBTOOL_PATH) PATH="$(ROOT)/$(PREFIX)/libtool-install/bin:$$PATH" \
COOKBOOK_HOST_SYSROOT=/usr COOKBOOK_CROSS_TARGET=$(TARGET) COOKBOOK_CROSS_GNU_TARGET=$(GNU_TARGET) && \
$(REPO_BIN) fetch host:wasi-libc host:rust
endif
touch "$@"
endif
$(PREFIX)/binutils-install: | $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -243,7 +268,7 @@ else
mv "$@.partial" "$@"
endif
$(PREFIX)/gcc-freestanding-install: $(PREFIX)/binutils-install | $(PREFIX)/libtool-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/gcc-freestanding-install: $(PREFIX)/binutils-install | $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -263,7 +288,7 @@ else
mv "$@.partial" "$@"
endif
$(PREFIX)/relibc-freestanding-install: $(PREFIX)/gcc-freestanding-install | $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/relibc-freestanding-install: $(PREFIX)/gcc-freestanding-install | $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -280,7 +305,7 @@ else
mv "$@.partial" "$@"
endif
$(PREFIX)/gcc-install: $(PREFIX)/relibc-freestanding-install | $(PREFIX)/libtool-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/gcc-install: $(PREFIX)/relibc-freestanding-install | $(PREFIX)/libtool-install $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -307,8 +332,6 @@ else
@#TODO: generates wrong lib path for libtool
rm -f "$@.partial"/$(GNU_TARGET)/lib/libstdc++.la
rm -f "$@.partial"/$(GNU_TARGET)/lib/libsupc++.la
@#TODO: Needed by clang, yet not emitted
ln -s crtbegin.o "$@.partial"/lib/gcc/$(GNU_TARGET)/13.2.0/crtbeginT.o
# hosted libstdcxx
export PATH="$(ROOT)/$@.partial/bin:$$PATH" \
ACLOCAL_PATH="$(LIBTOOL_PATH)/share/aclocal:$$ACLOCAL_PATH" && \
@ -399,7 +422,7 @@ endif
# BUILD RUST ---------------------------------------------------
else
$(PREFIX)/wasip1-libc-install: $(PREFIX)/clang-install | $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/wasip1-libc-install: $(PREFIX)/clang-install | $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -416,7 +439,7 @@ else
# TODO: Cache from WASIP1_LIBC_TARGET is currently not cleared.
endif
$(PREFIX)/rust-install: | $(PREFIX)/wasip1-libc-install $(PREFIX)/gcc-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/rust-install: | $(PREFIX)/wasip1-libc-install $(PREFIX)/gcc-install $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -435,7 +458,7 @@ endif
endif
# BUILD CLANG ---------------------------------------------------
$(PREFIX)/clang-install: | $(PREFIX)/gcc-install $(FSTOOLS_TAG) $(CONTAINER_TAG)
$(PREFIX)/clang-install: | $(PREFIX)/gcc-install $(PREFIX_FETCH_TAG)
ifeq ($(PODMAN_BUILD),1)
$(PODMAN_RUN) make $@
else
@ -451,6 +474,7 @@ else
cp -r "$(LLD_TARGET)/stage/usr/". "$@.partial"
rm -rf "$@.partial/lib/"*.a
echo "--sysroot=$(ROOT)/$(PREFIX)/gcc-install" > "$@.partial/bin/$(GNU_TARGET).cfg"
ln -s clang-21 "$@.partial/bin/wasm32-wasip1-clang"
ln -s clang-21 "$@.partial/bin/$(GNU_TARGET)-clang"
ln -s clang++ "$@.partial/bin/$(GNU_TARGET)-clang++"
export PATH="$(ROOT)/$@.partial/bin:$$PATH" $(PREFIX_CONFIG) \

View File

@ -1,3 +1,6 @@
[package]
description = "Compression library and tools, bzip2/.bz2 format"
[source]
tar = "https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz"
blake3 = "97af3f520629c65fe41292f77e6ca798fe594d7987bfb2aebe7c6fcdc7ab5ed2"
@ -35,6 +38,15 @@ ln -s "libbz2.so.1.0" "${COOKBOOK_STAGE}/usr/lib/libbz2.so.1"
ln -s "libbz2.so.1.0" "${COOKBOOK_STAGE}/usr/lib/libbz2.so"
fi
mkdir -p "${COOKBOOK_STAGE}/usr/lib/pkgconfig"
# Change symlinks in usr/bin as relative
find "${COOKBOOK_STAGE}/usr/bin" -type l | while read -r link; do
target=$(readlink "$link")
if [[ "$target" = /* ]]; then
ln -snfr "$target" "$link"
fi
done
mkdir -p "${COOKBOOK_STAGE}/usr/lib/pkgconfig" "${COOKBOOK_STAGE}/usr/share/"
cp "${COOKBOOK_RECIPE}/pkgconfig" "${COOKBOOK_STAGE}/usr/lib/pkgconfig/bzip2.pc"
mv "${COOKBOOK_STAGE}/usr/man" "${COOKBOOK_STAGE}/usr/share/"
"""

View File

@ -1,3 +1,6 @@
[package]
description = "Compression library, .zip format, based on zlib"
[source]
tar = "https://libzip.org/download/libzip-1.11.4.tar.gz"
blake3 = "844cf66c68f2dcf182f6626d5b72d55b75a100c0a93b3e6a45b447669ecf7088"

View File

@ -1,7 +1,9 @@
[package]
description = "Compression library and tools, lz4 format"
[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"

View File

@ -1,34 +0,0 @@
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)

View File

@ -1,3 +1,6 @@
[package]
description = "Compression library and tools, xz and .lzma format"
[source]
tar = "https://github.com/tukaani-project/xz/releases/download/v5.2.13/xz-5.2.13.tar.gz"
blake3 = "edc6350542e8cb7188a878135e5b9bd592d687e5b47451ca1c89d51cc4bc6b53"
@ -14,7 +17,6 @@ COOKBOOK_CONFIGURE_FLAGS+=(
--disable-lzmainfo
--disable-xz
--disable-xzdec
--enable-threads=no
)
cookbook_configure
"""

View File

@ -1,3 +1,6 @@
[package]
description = "Compression library and tools, zstd/.zst format"
[source]
tar = "https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz"
blake3 = "730dca31244abd219e995f03a55d95b2cfb4b3e16cda055a79fa6f30a4f0e1db"

View File

@ -1,3 +1,6 @@
[package]
description = "Wallpapers from Pop!_OS Linux"
[source]
git = "https://github.com/pop-os/wallpapers"
shallow_clone = true

View File

@ -1,3 +1,6 @@
[package]
description = "Wallpapers from Ubuntu Linux"
[source]
tar = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ubuntu-wallpapers/23.10.4/ubuntu-wallpapers_23.10.4.orig.tar.gz"
blake3 = "1e479d0aa48fe3f2961a2dac28c3ed397a29616cf6e7d73f5ceb6fabfd6449e1"

View File

@ -1,3 +1,6 @@
[package]
description = "Essential system components and drivers for Redox"
[source]
git = "https://gitlab.redox-os.org/redox-os/base.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Utilities for processing, manipulating, and inspecting binary files"
[source]
git = "https://gitlab.redox-os.org/redox-os/binutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Redox OS bootloader"
[source]
git = "https://gitlab.redox-os.org/redox-os/bootloader.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Containers and chroots for Redox"
[source]
git = "https://gitlab.redox-os.org/redox-os/contain.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Core UNIX shell utilities"
[source]
git = "https://gitlab.redox-os.org/redox-os/coreutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Standard POSIX shell, compatible with sh"
[source]
git = "https://gitlab.redox-os.org/redox-os/dash.git"
branch = "redox"

View File

@ -1,3 +1,6 @@
[package]
description = "Basic, but not essential for system function, UNIX shell utilities"
[source]
git = "https://gitlab.redox-os.org/redox-os/extrautils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "UNIX find tool"
[source]
git = "https://gitlab.redox-os.org/redox-os/findutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Builds a bootable Redox image"
[source]
git = "https://gitlab.redox-os.org/redox-os/installer.git"

View File

@ -0,0 +1,6 @@
# set orbital screen resolution to avoid x11 or wayland fallback for applications in a orbital session and workaround shell quirks
export DISPLAY=/scheme/orbital/99.0
export DISPLAY=$or($DISPLAY "/scheme/orbital/99.0")
export ORBITAL_DISPLAY=$or($ORBITAL_DISPLAY "/scheme/orbital")
# optional alias for the "clear" command
#alias cl = "clear"

View File

@ -1,5 +1,14 @@
[package]
description = "Official shell of the Redox project"
[source]
git = "https://gitlab.redox-os.org/redox-os/ion.git"
[build]
template = "cargo"
template = "custom"
script = """
DYNAMIC_INIT
cookbook_cargo
mkdir -pv "${COOKBOOK_STAGE}/etc/skel/.config/ion"
cp -rv "${COOKBOOK_RECIPE}"/config "${COOKBOOK_STAGE}/etc/skel/.config/ion"
"""

View File

@ -1,3 +1,6 @@
[package]
description = "The Redox microkernel"
[source]
git = "https://gitlab.redox-os.org/redox-os/kernel.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Default data files required for networking"
[source]
git = "https://gitlab.redox-os.org/redox-os/netdb.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Basic command-line networking utilities"
[source]
git = "https://gitlab.redox-os.org/redox-os/netutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Package format utilities for Redox"
[source]
git = "https://gitlab.redox-os.org/redox-os/pkgar.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Standard package manager for Redox"
[source]
git = "https://gitlab.redox-os.org/redox-os/pkgutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Daemon used for profiling kernel (requires profiling-kernel recipe)"
[source]
git = "https://gitlab.redox-os.org/redox-os/profiled.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Kernel with profiling code enabled"
[source]
same_as = "../kernel"

View File

@ -1,3 +1,6 @@
[package]
description = "Official filesystem of the Redox project"
[source]
git = "https://gitlab.redox-os.org/redox-os/redoxfs.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Redox POSIX/C Standard Library"
[source]
git = "https://gitlab.redox-os.org/redox-os/relibc.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Command-line utility for debugging the system"
[source]
git = "https://gitlab.redox-os.org/redox-os/strace-redox.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Command-line UNIX tools for managing users and groups"
[source]
git = "https://gitlab.redox-os.org/redox-os/userutils.git"

View File

@ -1,3 +1,6 @@
[package]
description = "General, useful command-line UNIX shell utilities (GNU Coreutils reimplemented in Rust)"
# TODO Fix locale init bug caused by OnceLock combined with thread_local
# TODO 0.12.0 requires rustix symlink_at
[source]
@ -16,7 +19,7 @@ script = """
DYNAMIC_INIT
export RUSTONIG_DYNAMIC_LIBONIG=1
# TODO: upstream changes, consider using feat_require_unix_core if relibc is ready?
CARGO_PROFILE_RELEASE_LTO=thin cookbook_cargo --no-default-features --features feat_os_unix_redox,kill,nice --bin coreutils
CARGO_PROFILE_RELEASE_LTO=thin cookbook_cargo --no-default-features --features feat_os_unix_redox,kill,nice,nproc --bin coreutils
BINS=(
'['

View File

@ -24,6 +24,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical text editor from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -24,6 +24,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical file manager from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -23,6 +23,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical system monitor from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -38,6 +38,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical PDF reader from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -23,6 +23,7 @@ cp -rv "${COOKBOOK_SOURCE}/resources/icons/" "${COOKBOOK_STAGE}/usr/share/icons/
"""
[package]
description = "Graphical system settings from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -24,6 +24,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical app store from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -20,6 +20,7 @@ cp -rv "${COOKBOOK_SOURCE}/res/icons/hicolor/" "${COOKBOOK_STAGE}/usr/share/icon
"""
[package]
description = "Graphical terminal emulator from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -15,6 +15,7 @@ COOKBOOK_CARGO_PATH=examples/editor cookbook_cargo_build
"""
[package]
description = "Demo of GUI text editing widget library from COSMIC desktop"
dependencies = [
"libxkbcommon",
]

View File

@ -1,3 +1,6 @@
[package]
description = "TLS certificate authorities, from the Mozilla CA Certificate Program"
[source]
git = "https://gitlab.redox-os.org/redox-os/ca-certificates.git"

View File

@ -1,3 +1,6 @@
[package]
description = "MIDI soundfont"
[source]
git = "https://gitlab.redox-os.org/redox-os/generaluser-gs.git"

View File

@ -1,3 +1,6 @@
[package]
description = "FreeDesktop common MIME database"
# This does not build update-mime-database to avoid bringing in C code to Redox
[source]
tar = "https://gitlab.freedesktop.org/xdg/shared-mime-info/-/archive/2.4/shared-mime-info-2.4.tar.gz"

View File

@ -1,3 +1,6 @@
[package]
description = "Tabset and terminfo databases"
[source]
git = "https://github.com/sajattack/terminfo"
branch = "master"

View File

@ -1,3 +1,6 @@
[package]
description = "Demo of Cairo GUI library"
# source is part of cookbook
[build]

View File

@ -25,6 +25,7 @@ sed -i -e 's|#define USE_TIOCSTI 1|/* #undef USE_TIOCSTI */|g' config.h
"""
[package]
description = "Terminal based character raining effect from the Matrix movies"
dependencies = [
"terminfo"
]

View File

@ -1,3 +1,7 @@
# TODO: When more CPAL examples are added, description should be changed
[package]
description = "Command line beep tool (demo from CPAL sound library)"
[source]
git = "https://gitlab.redox-os.org/redox-os/cpal.git"
branch = "redox"

View File

@ -1,3 +1,6 @@
[package]
description = "Example of a dynamic library for Redox"
[source]
git = "https://gitlab.redox-os.org/redox-os/dynamic-example.git"
shallow_clone = true

View File

@ -1,3 +1,6 @@
[package]
description = "Redox device driver daemon example"
[source]
git = "https://gitlab.redox-os.org/redox-os/exampled.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Mesa3D \"gears\" OpenGL demo ported to Orbital windowing"
[build]
dependencies=[
"liborbital",

View File

@ -1,3 +1,6 @@
[package]
description = "Demo of Glutin OpenGL-initialization library"
[source]
git = "https://gitlab.redox-os.org/redox-os/glutin.git"
branch = "redox-0.30"

View File

@ -1,3 +1,6 @@
[package]
description = "Examples from Iced GUI library"
[source]
git = "https://github.com/pop-os/iced"
rev = "300fa97"

View File

@ -1,3 +1,6 @@
[package]
description = "Orbital client library example"
[source]
git = "https://gitlab.redox-os.org/redox-os/orbclient.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Mesa3D offscreen rendering (OSMesa) demo using Orbital windowing"
[build]
template = "custom"
dependencies = [

View File

@ -15,6 +15,7 @@ cp -v "${COOKBOOK_SOURCE}/manifest" "${COOKBOOK_STAGE}/usr/share/ui/apps/pixelca
"""
[package]
description = "3D laughing face meme navigation demo"
dependencies = [
"orbital",
]

View File

@ -1,3 +1,6 @@
[package]
description = "Mesa3D \"gears\" OpenGL demo ported to SDL2 windowing"
[build]
template = "custom"
dependencies = [

View File

@ -1,3 +1,6 @@
[package]
description = "Examples from softbuffer GUI framebuffer library"
# NOTE: Switch to upstream once winit pump events have been upstreamed
[source]
git = "https://github.com/willnode/softbuffer.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Examples from winit GUI library"
[source]
git = "https://gitlab.redox-os.org/redox-os/winit"
branch = "redox-0.31.0-beta"

View File

@ -6,4 +6,5 @@ blake3 = "da1cc8af8551c343de9f42af0ae53fd7dff3623487157623892b6cd7e3bb5692"
template = "configure"
[package]
description = "Tools for self-configuring software source code (creates \"configure\" script)"
dependencies = ["perl5"]

View File

@ -6,4 +6,5 @@ blake3 = "f42cfc333aaaa11f2bcb05b5b0273b8706c820c22f9ba4367f7eb920551695cd"
template = "configure"
[package]
description = "Tools for high-level build scripting atop GNU Make (creates \"Makefile.in\")"
dependencies = ["perl5"]

View File

@ -1,3 +1,6 @@
[package]
description = "GNU Binutils version of GDB debugger"
[source]
git = "https://gitlab.redox-os.org/redox-os/binutils-gdb"
branch = "redox-2.43.1"

View File

@ -1,3 +1,6 @@
[package]
description = "LLVM C/C++ frontend/compiler"
[source]
same_as = "../llvm21"

View File

@ -1,9 +1,12 @@
[package]
description = "Widely-used cross-platform build system"
[source]
tar = "https://github.com/Kitware/CMake/releases/download/v4.3.2/cmake-4.3.2.tar.gz"
blake3 = "cbd0121189df1502f61e8f12f044b4a901b1ea16c74c016b85714e4661b8537f"
[build]
template = "cmake"
template = "custom"
dependencies = [
# "cppdap",
"curl",
@ -17,14 +20,19 @@ dependencies = [
"zlib",
"zstd",
]
cmakeflags = [
"-DBUILD_TESTING=Off",
"-DCMAKE_USE_SYSTEM_BZIP2=On",
"-DCMAKE_USE_SYSTEM_CURL=On",
"-DCMAKE_USE_SYSTEM_EXPAT=On",
"-DCMAKE_USE_SYSTEM_LIBARCHIVE=On",
"-DCMAKE_USE_SYSTEM_LIBUV=On",
"-DCMAKE_USE_SYSTEM_NGHTTP2=On",
"-DCMAKE_USE_SYSTEM_ZLIB=On",
"-DCMAKE_USE_SYSTEM_ZSTD=On",
]
script = """
DYNAMIC_INIT
COOKBOOK_CMAKE_FLAGS=(
-DBUILD_TESTING=Off
-DCMAKE_USE_SYSTEM_BZIP2=On
-DCMAKE_USE_SYSTEM_CURL=On
-DCMAKE_USE_SYSTEM_EXPAT=On
-DCMAKE_USE_SYSTEM_LIBARCHIVE=On
-DCMAKE_USE_SYSTEM_LIBUV=On
-DCMAKE_USE_SYSTEM_NGHTTP2=On
-DCMAKE_USE_SYSTEM_ZLIB=On
-DCMAKE_USE_SYSTEM_ZSTD=On
)
cookbook_cmake
mv "${COOKBOOK_STAGE}/usr/doc" "${COOKBOOK_STAGE}/usr/share/"
"""

View File

@ -1,3 +1,6 @@
[package]
description = "A dependency manager for PHP"
#TODO must be run using `php $(which composer)`
[build]
template = "custom"

View File

@ -1,3 +1,6 @@
[package]
description = "Library and tools to configure, enumerate, and substitute fonts"
[source]
tar = "https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.16.0.tar.xz"
blake3 = "5c95d48f5b9150f4a06d8acac12c25edaac956007df95a3bf527df02a5908f0e"

View File

@ -100,6 +100,7 @@ fi
"""
[package]
description = "GNU Compiler Collection"
dependencies = [
"gnu-binutils"
]

View File

@ -1,3 +1,6 @@
[package]
description = "GDB server for remote debugging"
[source]
git = "https://gitlab.redox-os.org/redox-os/gdbserver.git"

View File

@ -23,6 +23,7 @@ mesonflags = [
]
[package]
description = "Image loading library from GNOME project"
dependencies = [
"shared-mime-info",
]

View File

@ -1,240 +0,0 @@
diff -ruwN git-2.13.1/compat/bswap.h source/compat/bswap.h
--- git-2.13.1/compat/bswap.h 2017-06-04 19:08:11.000000000 -0600
+++ source/compat/bswap.h 2025-04-24 11:20:06.475749424 -0600
@@ -1,3 +1,7 @@
+#if defined(__redox__)
+#include <machine/endian.h>
+#endif
+
/*
* Let's make sure we always have a sane definition for ntohl()/htonl().
* Some libraries define those as a function call, just to perform byte
diff -ruwN git-2.13.1/compat/terminal.c source/compat/terminal.c
--- git-2.13.1/compat/terminal.c 2017-06-04 19:08:11.000000000 -0600
+++ source/compat/terminal.c 2025-04-18 10:00:11.318697446 -0600
@@ -137,6 +137,18 @@
return buf.buf;
}
+#elif defined(__redox__)
+
+ssize_t __getline(char **lptr, size_t *n, FILE *fp);
+
+char *git_terminal_prompt(const char *prompt, int echo)
+{
+ char *line = NULL;
+ size_t n = 0;
+ __getline(&line, &n, stdin);
+ return line; // XXX leak
+}
+
#else
char *git_terminal_prompt(const char *prompt, int echo)
diff -ruwN git-2.13.1/configure source/configure
--- git-2.13.1/configure 2017-06-04 19:08:11.000000000 -0600
+++ source/configure 2025-04-18 10:00:11.318697446 -0600
@@ -6156,7 +6156,7 @@
ac_res=$ac_cv_search_getaddrinfo
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
- NO_IPV6=
+ NO_IPV6=YesPlease
else
NO_IPV6=YesPlease
fi
diff -ruwN git-2.13.1/daemon.c source/daemon.c
--- git-2.13.1/daemon.c 2017-06-04 19:08:11.000000000 -0600
+++ source/daemon.c 2025-04-18 10:00:11.319697447 -0600
@@ -71,13 +71,21 @@
return hi->ip_address.buf;
}
+#if defined(__redox__)
+#define LOG_ERR 0
+#define LOG_INFO 1
+#endif
+
static void logreport(int priority, const char *err, va_list params)
{
+#if !defined(__redox__)
if (log_syslog) {
char buf[1024];
vsnprintf(buf, sizeof(buf), err, params);
syslog(priority, "%s", buf);
- } else {
+ } else
+#endif
+ {
/*
* Since stderr is set to buffered mode, the
* logging of different processes will not overlap
@@ -888,8 +896,12 @@
if (!reuseaddr)
return 0;
+#if defined(__redox__)
+ return 0;
+#else
return setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR,
&on, sizeof(on));
+#endif
}
struct socketlist {
@@ -1174,11 +1186,7 @@
if (!group_name)
c.gid = c.pass->pw_gid;
else {
- struct group *group = getgrnam(group_name);
- if (!group)
die("group not found - %s", group_name);
-
- c.gid = group->gr_gid;
}
return &c;
@@ -1348,10 +1356,12 @@
usage(daemon_usage);
}
+#if !defined(__redox__)
if (log_syslog) {
openlog("git-daemon", LOG_PID, LOG_DAEMON);
set_die_routine(daemon_die);
} else
+#endif
/* avoid splitting a message in the middle */
setvbuf(stderr, NULL, _IOFBF, 4096);
diff -ruwN git-2.13.1/git-compat-util.h source/git-compat-util.h
--- git-2.13.1/git-compat-util.h 2017-06-04 19:08:11.000000000 -0600
+++ source/git-compat-util.h 2025-04-18 10:00:11.319697447 -0600
@@ -1,6 +1,18 @@
#ifndef GIT_COMPAT_UTIL_H
#define GIT_COMPAT_UTIL_H
+#ifndef SIG_DFL
+#define SIG_DFL ((void (*)(int))0)
+#endif
+
+#ifndef SIG_IGN
+#define SIG_IGN ((void (*)(int))1)
+#endif
+
+#ifndef SIG_ERR
+#define SIG_ERR ((void (*)(int))-1)
+#endif
+
#define _FILE_OFFSET_BITS 64
@@ -323,6 +335,14 @@
#define PATH_SEP ':'
#endif
+#ifndef DEV_NULL
+#if defined(__redox__)
+#define DEV_NULL "/scheme/null"
+#else
+#define DEV_NULL "/dev/null"
+#endif
+#endif
+
#ifdef HAVE_PATHS_H
#include <paths.h>
#endif
diff -ruwN git-2.13.1/Makefile source/Makefile
--- git-2.13.1/Makefile 2017-06-05 08:08:11.000000000 +0700
+++ source/Makefile 2025-09-01 04:41:10.339224568 +0700
@@ -979,7 +979,7 @@
BUILTIN_OBJS += builtin/write-tree.o
GITLIBS = common-main.o $(LIB_FILE) $(XDIFF_LIB)
-EXTLIBS =
+EXTLIBS = -lnghttp2
GIT_USER_AGENT = git/$(GIT_VERSION)
@@ -1802,7 +1802,6 @@
$(BUILT_INS): git$X
$(QUIET_BUILT_IN)$(RM) $@ && \
- ln $< $@ 2>/dev/null || \
ln -s $< $@ 2>/dev/null || \
cp $< $@
@@ -2096,7 +2095,6 @@
$(REMOTE_CURL_ALIASES): $(REMOTE_CURL_PRIMARY)
$(QUIET_LNCP)$(RM) $@ && \
- ln $< $@ 2>/dev/null || \
ln -s $< $@ 2>/dev/null || \
cp $< $@
@@ -2449,14 +2447,12 @@
for p in $(filter $(install_bindir_programs),$(BUILT_INS)); do \
$(RM) "$$bindir/$$p" && \
test -z "$(NO_INSTALL_HARDLINKS)" && \
- ln "$$bindir/git$X" "$$bindir/$$p" 2>/dev/null || \
ln -s "git$X" "$$bindir/$$p" 2>/dev/null || \
cp "$$bindir/git$X" "$$bindir/$$p" || exit; \
done && \
for p in $(BUILT_INS); do \
$(RM) "$$execdir/$$p" && \
test -z "$(NO_INSTALL_HARDLINKS)" && \
- ln "$$execdir/git$X" "$$execdir/$$p" 2>/dev/null || \
ln -s "git$X" "$$execdir/$$p" 2>/dev/null || \
cp "$$execdir/git$X" "$$execdir/$$p" || exit; \
done && \
@@ -2464,7 +2460,6 @@
for p in $$remote_curl_aliases; do \
$(RM) "$$execdir/$$p" && \
test -z "$(NO_INSTALL_HARDLINKS)" && \
- ln "$$execdir/git-remote-http$X" "$$execdir/$$p" 2>/dev/null || \
ln -s "git-remote-http$X" "$$execdir/$$p" 2>/dev/null || \
cp "$$execdir/git-remote-http$X" "$$execdir/$$p" || exit; \
done && \
diff -ruwN git-2.13.1/run-command.c source/run-command.c
--- git-2.13.1/run-command.c 2017-06-04 19:08:11.000000000 -0600
+++ source/run-command.c 2025-04-18 10:00:11.320697447 -0600
@@ -120,9 +120,9 @@
#ifndef GIT_WINDOWS_NATIVE
static inline void dup_devnull(int to)
{
- int fd = open("/dev/null", O_RDWR);
+ int fd = open(DEV_NULL, O_RDWR);
if (fd < 0)
- die_errno(_("open /dev/null failed"));
+ die_errno(_("open %s failed"), DEV_NULL);
if (dup2(fd, to) < 0)
die_errno(_("dup2(%d,%d) failed"), fd, to);
close(fd);
diff -ruwN git-2.13.1/setup.c source/setup.c
--- git-2.13.1/setup.c 2017-06-05 08:08:11.000000000 +0700
+++ source/setup.c 2025-09-01 04:41:10.339224568 +0700
@@ -1146,11 +1146,11 @@
/* if any standard file descriptor is missing open it to /dev/null */
void sanitize_stdfds(void)
{
- int fd = open("/dev/null", O_RDWR, 0);
+ int fd = open(DEV_NULL, O_RDWR, 0);
while (fd != -1 && fd < 2)
fd = dup(fd);
if (fd == -1)
- die_errno("open /dev/null or dup failed");
+ die_errno("open %s or dup failed", DEV_NULL);
if (fd > 2)
close(fd);
}
@@ -1169,8 +1169,10 @@
default:
exit(0);
}
+#if !defined(__redox__)
if (setsid() == -1)
die_errno("setsid failed");
+#endif
close(0);
close(1);
close(2);

View File

@ -0,0 +1,2 @@
[protocol]
version = 0

View File

@ -1,15 +1,13 @@
[source]
tar = "https://www.kernel.org/pub/software/scm/git/git-2.13.1.tar.xz"
blake3 = "bc78271bffd60c5b8b938d8c08fd74dc2de8d21fbaf8f8e0e3155436d9263f17"
patches = ["git.patch"]
tar = "https://www.kernel.org/pub/software/scm/git/git-2.56.0.tar.xz"
blake3 = "596b02fea3d67e2ca45208aabebc92d2c14e7f2827f82cba59a630d55eea0854"
[build]
dependencies=[
"curl",
"expat",
"nghttp2",
"openssl3",
"zlib"
"zlib",
"pcre2",
]
template = "custom"
script = """
@ -18,36 +16,35 @@ DYNAMIC_INIT
MAKEFLAGS=(
NEEDS_SSL_WITH_CURL=1
NEEDS_CRYPTO_WITH_SSL=1
NO_IPV6=1
NO_PREAD=1
NO_MMAP=1
NO_SETITIMER=1
NO_UNIX_SOCKETS=1
NO_IPV6=1 # not implemented
NO_MMAP=1 # mmap writes extra null padding
NO_SETITIMER=1 # deprecated
NO_UNIX_SOCKETS=1 # need inotify
NEEDS_LIBICONV=
NEEDS_LIBRT=
BLK_SHA1=1
V=1
RUST_TARGETS=$TARGET
INSTALL_SYMLINKS=1
)
if [ "${COOKBOOK_DYNAMIC}" != "1" ]; then
# git does not use pkgconfig to be aware with zstd
MAKEFLAGS+=( EXTLIBS="-lzstd -lnghttp2 -lz" )
fi
export CURL_CONFIG="${COOKBOOK_SYSROOT}/usr/bin/curl-config"
./configure \
--host="${GNU_TARGET}" \
--prefix=/usr \
--sysconfdir=/etc \
ac_cv_fread_reads_directories=yes \
ac_cv_snprintf_returns_bogus=yes \
ac_cv_lib_curl_curl_global_init=yes
"${COOKBOOK_MAKE}" "${MAKEFLAGS[@]}" -j"${COOKBOOK_MAKE_JOBS}"
"${COOKBOOK_MAKE}" DESTDIR="${COOKBOOK_STAGE}" "${MAKEFLAGS[@]}" install
rm -rf "${COOKBOOK_STAGE}/usr/share/man"
# TODO: pinned to protocol v0 otherwise silently quit
mkdir -p "${COOKBOOK_STAGE}/etc"
cp "${COOKBOOK_RECIPE}/gitconfig" "${COOKBOOK_STAGE}/etc/"
"""
[package]
description = "Distributed version control system"
dependencies = [
"ca-certificates",
"nghttp2"
]

View File

@ -1,3 +1,6 @@
[package]
description = "Rust reimplementation of Git"
[source]
git = "https://github.com/Byron/gitoxide.git"
rev = "v0.54.0"

View File

@ -1,3 +1,6 @@
[package]
description = "GNU version of Make tool"
#TODO slower jobserver due to lack of named pipes
[source]
tar = "http://ftp.gnu.org/gnu/make/make-4.4.tar.gz"

View File

@ -1,3 +1,6 @@
[package]
description = "\"Hello world\" examples in over 1000 languages"
[source]
git = "https://github.com/leachim6/hello-world"
shallow_clone = true

View File

@ -1,3 +1,6 @@
[package]
description = "Command-line JSON processor"
#TODO undefined reference
[source]
tar = "https://github.com/jqlang/jq/releases/download/jq-1.8.1/jq-1.8.1.tar.gz"

View File

@ -1,3 +1,6 @@
[package]
description = "Interpreter for LOLCODE programming language"
[source]
git = "https://github.com/jD91mZM2/rust-lci"

View File

@ -1,3 +1,6 @@
[package]
description = "Tools for working with shared libraries"
#TODO can build, not tested
[source]
git = "https://gitlab.redox-os.org/redox-os/libtool"

View File

@ -1,3 +1,6 @@
[package]
description = "The LLVM linker"
[source]
same_as = "../llvm21"

View File

@ -1,3 +1,6 @@
[package]
description = "LLVM 21.x libraries and tools additional support libraries used by Clang"
[source]
same_as = "../llvm21"
@ -10,8 +13,11 @@ DYNAMIC_INIT
generate_cookbook_cmake_file "$COOKBOOK_HOST_TARGET" "" "$COOKBOOK_TOOLCHAIN" native.cmake
COOKBOOK_CMAKE_FLAGS+=(
-DLLVM_ENABLE_RUNTIMES="compiler-rt;libcxx;libcxxabi"
-DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind"
-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY
# unused compiler-rt flags, disabled for now to prevent runtime mixups
-DCOMPILER_RT_BUILD_CRT=ON
-DCOMPILER_RT_BUILD_ORC=OFF
-DCOMPILER_RT_BUILD_XRAY=OFF
-DCOMPILER_RT_BUILD_MEMPROF=OFF
@ -19,14 +25,17 @@ COOKBOOK_CMAKE_FLAGS+=(
-DCOMPILER_RT_BUILD_SANITIZERS=OFF
-DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON
-DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON
-DLIBCXX_USE_COMPILER_RT=ON
-DLIBCXX_ENABLE_SHARED=OFF
-DLIBCXX_USE_COMPILER_RT=OFF
-DLIBCXX_ENABLE_SHARED=ON
-DLIBCXX_ENABLE_LOCALIZATION=OFF # TODO: *_l functions
-DLIBCXX_ENABLE_FILESYSTEM=OFF # TODO: fstream require locales
-DLIBCXX_ENABLE_WIDE_CHARACTERS=OFF # TODO: wsctof, wsctold
-DLIBCXXABI_USE_COMPILER_RT=ON
-DLIBCXXABI_ENABLE_SHARED=OFF
-DLIBCXXABI_USE_LLVM_UNWINDER=OFF # TODO: libunwind need link.h
-DLIBCXXABI_USE_COMPILER_RT=OFF
-DLIBCXXABI_ENABLE_SHARED=ON
-DLIBCXXABI_USE_LLVM_UNWINDER=OFF # libgcc contains unwinder
-DLIBUNWIND_USE_COMPILER_RT=OFF
-DLIBUNWIND_ENABLE_SHARED=ON
-DCOMPILER_RT_INSTALL_PATH="/usr/lib/clang/21"
# the shared options from llvm

View File

@ -1,3 +1,6 @@
[package]
description = "LLVM 18.x libraries and tools"
[source]
git = "https://gitlab.redox-os.org/redox-os/llvm-project.git"
upstream = "https://github.com/rust-lang/llvm-project.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Libraries and tools for LLVM generic compiler backend, version 21"
[source]
git = "https://gitlab.redox-os.org/redox-os/llvm-project.git"
upstream = "https://github.com/rust-lang/llvm-project.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Lua programming language, PUC-Rio distribution, version 5.4"
[source]
tar = "https://lua.org/ftp/lua-5.4.7.tar.gz"
blake3 = "e51c2f347e3185479d5ff95cae8ac77511db486853269443c56bedaa0a6ae629"

View File

@ -1,3 +1,6 @@
[package]
description = "JIT version of Lua programming language, version 5.1 plus extensions"
[source]
git = "https://luajit.org/git/luajit.git"
rev = "a4f56a459a588ae768801074b46ba0adcfb49eb1"

View File

@ -1,3 +1,6 @@
[package]
description = "Package manager for Lua programming language"
[source]
git = "https://github.com/luarocks/luarocks.git"
shallow_clone = true

View File

@ -1,3 +1,6 @@
[package]
description = "x86 assembler"
[source]
#TODO: nasm.us is down: tar = "https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.gz"
tar = "https://gstreamer.freedesktop.org/src/mirror/nasm-2.14.02.tar.xz"

View File

@ -1,35 +0,0 @@
diff -ru source/lib/getdtablesize.c source-new/lib/getdtablesize.c
--- source/lib/getdtablesize.c 2015-03-06 16:31:45.000000000 -0800
+++ source-new/lib/getdtablesize.c 2017-08-08 19:33:33.993874985 -0700
@@ -106,15 +106,6 @@
int
getdtablesize (void)
{
- struct rlimit lim;
-
- if (getrlimit (RLIMIT_NOFILE, &lim) == 0
- && 0 <= lim.rlim_cur && lim.rlim_cur <= INT_MAX
- && lim.rlim_cur != RLIM_INFINITY
- && lim.rlim_cur != RLIM_SAVED_CUR
- && lim.rlim_cur != RLIM_SAVED_MAX)
- return lim.rlim_cur;
-
return INT_MAX;
}
Only in source-new/lib: getdtablesize.c.orig
diff -ru source/src/safe.c source-new/src/safe.c
--- source/src/safe.c 2015-03-06 16:34:20.000000000 -0800
+++ source-new/src/safe.c 2017-08-08 19:33:53.447430811 -0700
@@ -92,11 +92,7 @@
static void init_dirfd_cache (void)
{
- struct rlimit nofile;
-
max_cached_fds = 8;
- if (getrlimit (RLIMIT_NOFILE, &nofile) == 0)
- max_cached_fds = MAX (nofile.rlim_cur / 4, max_cached_fds);
cached_dirfds = hash_initialize (max_cached_fds,
NULL,

View File

@ -1,10 +1,12 @@
[package]
description = "Tool to apply a diff file to an original"
[source]
tar = "https://ftp.gnu.org/gnu/patch/patch-2.7.6.tar.xz"
blake3 = "d46d14c12aa4ea51e356bf92091c368fd871e1d770b94bc29027886737aecd5f"
patches = [
"01_no_rlimit.patch",
"02_no_chown.patch",
"03_renameat2.patch",
"01_no_chown.patch",
"02_renameat2.patch",
]
script = """
wget -O build-aux/config.sub "https://gitlab.redox-os.org/redox-os/gnu-config/-/raw/master/config.sub?inline=false"

View File

@ -1,3 +1,6 @@
[package]
description = "Data file mapping that maps PCI IDs to human-readable names"
[source]
git = "https://github.com/pciutils/pciids.git"

View File

@ -1,3 +1,6 @@
[package]
description = "Web-centric programming language"
[source]
tar = "https://www.php.net/distributions/php-8.4.17.tar.xz"
blake3 = "a8478dddd948d4b26e51c5727ac0895440da76e8ad9be947098a4284ca0b7f2a"

Some files were not shown because too many files have changed in this diff Show More