diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8001cfc1c..1950e31f8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -27,7 +27,7 @@ When making a contribution you agree to the following terms: ## AI Policy -Redox OS does not accept contributions generated by LLMs ([Large Language Models](https://en.wikipedia.org/wiki/Large_language_model)), sometimes also referred to as "AI". This policy is not open to discussion, any content submitted that is clearly labelled as LLM-generated (including issues, merge requests, and merge request descriptions) will be immediately closed, and any attempt to bypass this policy will result in a ban from the project. +Redox OS does not accept contributions generated by LLMs ([Large Language Models](https://en.wikipedia.org/wiki/Large_language_model)), sometimes also referred to as "AI". ## Chat diff --git a/Cargo.lock b/Cargo.lock index 9f63bb527..7dec81574 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -10,9 +10,9 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "aho-corasick" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba" dependencies = [ "memchr", ] @@ -48,12 +48,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9bcdf9185a4ea0d8afa7c8ad387cc3a93c3ecfa918125e000a57a42e71268d7" -[[package]] -name = "arrayref" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" - [[package]] name = "arrayvec" version = "0.7.6" @@ -68,16 +62,15 @@ checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" [[package]] name = "blake3" -version = "1.8.3" +version = "1.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d" +checksum = "6d9e454fc11f76977dc803893aff6304ed33d6a26efae8696573bea74baa27ae" dependencies = [ - "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", - "cpufeatures", + "cpufeatures 0.3.1", "rayon-core", ] @@ -90,6 +83,16 @@ dependencies = [ "generic-array", ] +[[package]] +name = "block-buffer" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" +dependencies = [ + "hybrid-array", + "zeroize", +] + [[package]] name = "bstr" version = "1.12.1" @@ -100,6 +103,12 @@ dependencies = [ "serde", ] +[[package]] +name = "bumpalo" +version = "3.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" + [[package]] name = "bytemuck" version = "1.24.0" @@ -117,7 +126,7 @@ checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -141,28 +150,30 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" +checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600" [[package]] name = "chacha20" -version = "0.9.1" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" +checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06" dependencies = [ "cfg-if", "cipher", - "cpufeatures", + "cpufeatures 0.3.1", + "zeroize", ] [[package]] name = "cipher" -version = "0.4.4" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +checksum = "e8cf2a2c93cd704877c0858356ed03480ff301ee950b43f1cbe4573b088bfa6c" dependencies = [ - "crypto-common", + "block-buffer 0.12.1", + "crypto-common 0.2.2", "inout", "zeroize", ] @@ -181,6 +192,12 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "const-oid" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6ef517f0926dd24a1582492c791b6a4818a4d94e789a334894aa15b0d12f55c" + [[package]] name = "constant_time_eq" version = "0.4.2" @@ -197,19 +214,28 @@ dependencies = [ ] [[package]] -name = "crc32fast" -version = "1.5.0" +name = "cpufeatures" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +checksum = "5ca28b0ae3115b884660db4118d803791fd6756b6e88f39c0f3f7859060d7566" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ba106e844045ddc02c20768ac4b0b7cb45f2cc2ecbd833ac9f5dacb183c2055" dependencies = [ "cfg-if", ] [[package]] name = "crossbeam-deque" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +checksum = "622f3fc73690be383c7214310406f28a90e6edeadc3cea882f9d71e495b9711a" dependencies = [ "crossbeam-epoch", "crossbeam-utils", @@ -217,9 +243,9 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "dc74980687109a3b14c72fd458107bf0baa1da1a1a805e178d15501ba9b86d9d" dependencies = [ "crossbeam-utils", ] @@ -240,6 +266,15 @@ dependencies = [ "typenum", ] +[[package]] +name = "crypto-common" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce6e4c961d6cd6c9a86db418387425e8bdeaf05b3c8bc1411e6dca4c252f1453" +dependencies = [ + "hybrid-array", +] + [[package]] name = "curve25519-dalek" version = "4.1.3" @@ -247,7 +282,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "curve25519-dalek-derive", "fiat-crypto", "rustc_version", @@ -263,7 +298,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -287,7 +322,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn", + "syn 2.0.119", ] [[package]] @@ -298,7 +333,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -306,9 +341,6 @@ name = "deranged" version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" -dependencies = [ - "powerfmt", -] [[package]] name = "digest" @@ -316,8 +348,20 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", - "crypto-common", + "block-buffer 0.10.4", + "crypto-common 0.1.7", +] + +[[package]] +name = "digest" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" +dependencies = [ + "block-buffer 0.12.1", + "const-oid", + "crypto-common 0.2.2", + "zeroize", ] [[package]] @@ -338,24 +382,23 @@ dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.61.2", + "windows-sys", ] [[package]] name = "dryoc" -version = "0.7.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4684d84cc4dc1a8705dcbe8be0e258581dfdbb308477ed604f52797c336bb3d2" +checksum = "2a9268c01fc6ec1f2a104ae9e40343c255fbcafea97a48f334237206c96838b2" dependencies = [ - "bitflags", "chacha20", "curve25519-dalek", - "generic-array", - "lazy_static", + "getrandom", "libc", - "rand_core", + "rand", "salsa20", - "sha2", + "sha2 0.11.1", + "sha3", "subtle", "winapi", "zeroize", @@ -387,12 +430,13 @@ checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" [[package]] name = "flate2" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" +checksum = "6e634e2e0ebac1ee034020da1ca582e17ffe4e0f5e985823721e168928136dcb" dependencies = [ "crc32fast", "miniz_oxide", + "zlib-rs", ] [[package]] @@ -419,32 +463,23 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "getrandom" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", + "js-sys", "libc", "r-efi", - "wasip2", + "rand_core", + "wasm-bindgen", ] [[package]] name = "globset" -version = "0.4.18" +version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52dfc19153a48bde0cbd630453615c8151bce3a5adfac7a0aebfbf0a1e1f57e3" +checksum = "f98b0d85522dc0a824cfebbc9594ff4a9b289c568bea0370319dfbdf20ccdd2d" dependencies = [ "aho-corasick", "bstr", @@ -464,6 +499,12 @@ dependencies = [ "foldhash", ] +[[package]] +name = "hashbrown" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" + [[package]] name = "heck" version = "0.5.0" @@ -479,6 +520,16 @@ dependencies = [ "serde", ] +[[package]] +name = "hybrid-array" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3944cf8cf766b40e2a1a333ee5e9b563f854d5fa49d6a8ca2764e97c6eddb214" +dependencies = [ + "typenum", + "zeroize", +] + [[package]] name = "ident_case" version = "1.0.1" @@ -503,12 +554,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.12.1" +version = "2.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" +checksum = "cc4e190f5d26ca7051642629da2c52fc03bde85a03197c99408dcd291734c855" dependencies = [ "equivalent", - "hashbrown", + "hashbrown 0.17.1", ] [[package]] @@ -522,11 +573,11 @@ dependencies = [ [[package]] name = "inout" -version = "0.1.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" +checksum = "3b5cf4372d022092674a83b8febf5865f7a573cc0c5baec5e49c879b6a20978f" dependencies = [ - "generic-array", + "hybrid-array", ] [[package]] @@ -539,7 +590,7 @@ dependencies = [ "indoc", "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -553,9 +604,19 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "js-sys" +version = "0.3.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7883d941dae510fb2d978fc3fe018c71c9e2892fd38854de3e8b92c2e5ad9cc5" +dependencies = [ + "cfg-if", + "wasm-bindgen", +] [[package]] name = "kasuari" @@ -563,16 +624,20 @@ version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bde5057d6143cc94e861d90f591b9303d6716c6b9602309150bd068853c10899" dependencies = [ - "hashbrown", + "hashbrown 0.16.1", "portable-atomic", "thiserror", ] [[package]] -name = "lazy_static" -version = "1.5.0" +name = "keccak" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +checksum = "d8f198d1db720e4940b5a493201d199d9f24f568f8f746bd13706243a2f71598" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.1", +] [[package]] name = "libc" @@ -601,50 +666,49 @@ dependencies = [ [[package]] name = "log" -version = "0.4.29" +version = "0.4.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6" [[package]] name = "lru" -version = "0.16.3" +version = "0.16.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +checksum = "7f66e8d5d03f609abc3a39e6f08e4164ebf1447a732906d39eb9b99b7919ef39" dependencies = [ - "hashbrown", + "hashbrown 0.16.1", ] [[package]] name = "lzma-rust2" -version = "0.16.2" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47bb1e988e6fb779cf720ad431242d3f03167c1b3f2b1aae7f1a94b2495b36ae" +checksum = "5e2a88783b84d2d67ef2791778a9e76bfb68b8017aaf6c9d7d5f2626a478b16c" dependencies = [ - "sha2", + "sha2 0.11.1", ] [[package]] name = "memchr" -version = "2.7.6" +version = "2.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" +checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" [[package]] -name = "memsec" -version = "0.6.3" +name = "memsafe" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa0916b001582d253822171bd23f4a0229d32b9507fae236f5da8cad515ba7c" +checksum = "32fc5de373e559e46f1ab7c2e1c3841fdf9bf4a5ddd177a997ff6390d2dfc02f" dependencies = [ - "getrandom 0.2.16", "libc", - "windows-sys 0.45.0", + "winapi", ] [[package]] name = "miniz_oxide" -version = "0.8.9" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +checksum = "b63fbc4a50860e98e7b2aa7804ded1db5cbc3aff9193adaff57a6931bf7c4b4c" dependencies = [ "adler2", "simd-adler32", @@ -661,9 +725,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.1.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +checksum = "521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441" [[package]] name = "num_threads" @@ -688,12 +752,18 @@ checksum = "271638cd5fa9cca89c4c304675ca658efc4e64a66c716b7cfe1afb4b9611dbbc" dependencies = [ "crc32fast", "flate2", - "hashbrown", + "hashbrown 0.16.1", "indexmap", "memchr", "ruzstd", ] +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + [[package]] name = "option-ext" version = "0.2.0" @@ -702,8 +772,8 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "pkgar" -version = "0.2.3" -source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#a7b65343e856d4b16f9e788a7c49fffb05822dab" +version = "0.2.4" +source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#d10d42b143b03b141f9792a48cfd3ef059867051" dependencies = [ "blake3", "bytemuck", @@ -715,8 +785,8 @@ dependencies = [ [[package]] name = "pkgar-core" -version = "0.2.3" -source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#a7b65343e856d4b16f9e788a7c49fffb05822dab" +version = "0.2.4" +source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#d10d42b143b03b141f9792a48cfd3ef059867051" dependencies = [ "bitflags", "blake3", @@ -726,12 +796,12 @@ dependencies = [ [[package]] name = "pkgar-keys" -version = "0.2.3" -source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#a7b65343e856d4b16f9e788a7c49fffb05822dab" +version = "0.2.4" +source = "git+https://gitlab.redox-os.org/redox-os/pkgar.git#d10d42b143b03b141f9792a48cfd3ef059867051" dependencies = [ "hex", + "memsafe", "pkgar-core", - "seckey", "serde", "thiserror", "toml", @@ -769,18 +839,25 @@ dependencies = [ [[package]] name = "r-efi" -version = "5.3.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + +[[package]] +name = "rand" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65c9fb96cbc91e3478eaae79a69fcd3f1ae4ad052e471fe6732fff548984b4af" +dependencies = [ + "getrandom", + "rand_core", +] [[package]] name = "rand_core" -version = "0.9.5" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" -dependencies = [ - "getrandom 0.3.4", -] +checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" [[package]] name = "ratatui" @@ -802,7 +879,7 @@ checksum = "5ef8dea09a92caaf73bff7adb70b76162e5937524058a7e5bff37869cbbec293" dependencies = [ "bitflags", "compact_str", - "hashbrown", + "hashbrown 0.16.1", "indoc", "itertools", "kasuari", @@ -832,7 +909,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7dbfa023cd4e604c2553483820c5fe8aa9d71a42eea5aa77c6e7f35756612db" dependencies = [ "bitflags", - "hashbrown", + "hashbrown 0.16.1", "indoc", "instability", "itertools", @@ -856,8 +933,8 @@ dependencies = [ [[package]] name = "redox-pkg" -version = "0.3.2" -source = "git+https://gitlab.redox-os.org/redox-os/pkgutils.git#5de8f295fdce141aa76ddba6f787b5589db18783" +version = "0.3.3" +source = "git+https://gitlab.redox-os.org/redox-os/pkgutils.git#fe21bfd95d869cafd356bcdec4d1a81739ede5ee" dependencies = [ "hex", "serde", @@ -895,7 +972,7 @@ dependencies = [ [[package]] name = "redox_installer" version = "0.2.42" -source = "git+https://gitlab.redox-os.org/redox-os/installer.git#b5a11310e1ac915494efea6d18e242966da74f3f" +source = "git+https://gitlab.redox-os.org/redox-os/installer.git#2d2416c151e880bd68799b5c6cf46d019d964675" dependencies = [ "anyhow", "arg_parser", @@ -906,11 +983,10 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" +checksum = "60dc65c0ff1a7ae1294b0c67b9f14baf70b644404010370171787bfac1038fc0" dependencies = [ - "getrandom 0.2.16", "libredox", "thiserror", ] @@ -918,18 +994,18 @@ dependencies = [ [[package]] name = "redoxer" version = "0.2.63" -source = "git+https://gitlab.redox-os.org/redox-os/redoxer.git#9281d1d591adf2db028e06a7d75767ad9b55d54f" +source = "git+https://gitlab.redox-os.org/redox-os/redoxer.git#da7ec171322b28073c177bdf9cebbdc6049813eb" dependencies = [ "anyhow", "dirs", - "sha2", + "sha2 0.10.9", ] [[package]] name = "regex" -version = "1.12.2" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" dependencies = [ "aho-corasick", "memchr", @@ -939,9 +1015,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.13" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" +checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2" dependencies = [ "aho-corasick", "memchr", @@ -950,9 +1026,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.8" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" +checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" [[package]] name = "rustc_version" @@ -986,10 +1062,11 @@ checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "salsa20" -version = "0.10.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +checksum = "2f874456e72520ff1375a06c588eaf074b0f01f9e9e1aada45bd9b7954a6e42c" dependencies = [ + "cfg-if", "cipher", ] @@ -1002,20 +1079,11 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "seckey" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd64b8649b6038d9ea27fde99aeded1c5571c00af18a6bc54ed6c1e01d7d2083" -dependencies = [ - "memsec", -] - [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "serde" @@ -1044,7 +1112,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -1062,11 +1130,11 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.9" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +checksum = "4e7523beb55eece201a2356bee0bbca0d1ab466c14c07703b2e0ee6d42cb0c2c" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -1076,8 +1144,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures", - "digest", + "cpufeatures 0.2.17", + "digest 0.10.7", +] + +[[package]] +name = "sha2" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47d7069beb7d6ac7b9acd1039986e73443f24234f41074da099d6f994ac9ad19" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.1", + "digest 0.11.3", +] + +[[package]] +name = "sha3" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9bad02c26382724b2d2692c6f179285e4b54eeecd7968f52a50059c3c11759" +dependencies = [ + "digest 0.11.3", + "keccak", + "sponge-cursor", ] [[package]] @@ -1104,6 +1194,15 @@ version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +[[package]] +name = "sponge-cursor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a0219bd7d979d58245a4f41f695e1ac9f8befdffadd7f61f1bae9e39abc6620" +dependencies = [ + "zeroize", +] + [[package]] name = "static_assertions" version = "1.1.0" @@ -1143,7 +1242,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] @@ -1154,9 +1253,20 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.111" +version = "2.0.119" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "3.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d78c8dee4c7bf0e14673097256fed6142ce9d3b85a408189d07482442145823b" dependencies = [ "proc-macro2", "quote", @@ -1190,70 +1300,68 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] name = "time" -version = "0.3.44" +version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +checksum = "cdb87b95ec50ddfa440816d227a17b2ccbdda963a316a727fda0fc4334f7d134" dependencies = [ "deranged", "libc", "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", ] [[package]] name = "time-core" -version = "0.1.6" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" +checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109" [[package]] name = "toml" -version = "0.8.23" +version = "1.1.8+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - -[[package]] -name = "toml_datetime" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_edit" -version = "0.22.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" +checksum = "20489e00e4d8741d6be680764cc12e270655e375a20d1011e844a9c3379e678d" dependencies = [ "indexmap", - "serde", + "serde_core", "serde_spanned", "toml_datetime", - "toml_write", + "toml_parser", + "toml_writer", "winnow", ] [[package]] -name = "toml_write" -version = "0.1.2" +name = "toml_datetime" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" +checksum = "2b86d767906c6c42421dcba507eb9d203e779497710a47782a224bb871653053" +dependencies = [ + "serde_core", +] + +[[package]] +name = "toml_parser" +version = "1.1.5+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baa693a8032d7e1cada7d0041e96126df243179ff061456783ac7f12bda4744c" +dependencies = [ + "winnow", +] + +[[package]] +name = "toml_writer" +version = "1.1.3+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06bdbd8cfc056b8d2e2e85f29b56a3bdbecb527cef81eb39e3e7b98af4652770" [[package]] name = "twox-hash" @@ -1322,18 +1430,48 @@ dependencies = [ ] [[package]] -name = "wasi" -version = "0.11.1+wasi-snapshot-preview1" +name = "wasm-bindgen" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" +checksum = "9bb54f33acc68fd454578d9820b0bde1a1a3d17aa17bb7b6595806d02886d409" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] [[package]] -name = "wasip2" -version = "1.0.2+wasi-0.2.9" +name = "wasm-bindgen-macro" +version = "0.2.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" +checksum = "2e29d0c35b16e224a7eeb5cd2d25e3e1968fbd65604117b44d3b789d00ee8535" dependencies = [ - "wit-bindgen", + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.129" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f501a8bc3719dba86ef8ae4728879c08001bea749eb1333ac5b91e040e2a6b7" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn 3.0.9", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.129" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23f0c9c52aa7cd7d77769a4cfe2a9adb1b331f489a41d912ce14513d5ab995c6" +dependencies = [ + "unicode-ident", ] [[package]] @@ -1358,7 +1496,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.2", + "windows-sys", ] [[package]] @@ -1373,15 +1511,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets", -] - [[package]] name = "windows-sys" version = "0.61.2" @@ -1391,100 +1520,40 @@ dependencies = [ "windows-link", ] -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - [[package]] name = "winnow" -version = "0.7.14" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" -dependencies = [ - "memchr", -] - -[[package]] -name = "wit-bindgen" -version = "0.51.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" +checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81" [[package]] name = "zeroize" -version = "1.8.2" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" +checksum = "e13084392c5e4bc371903e2935a5eaeed24905a7511356b883835e18a78f6879" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.119", ] [[package]] -name = "zmij" -version = "1.0.21" +name = "zlib-rs" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" +checksum = "b268e58e7c693d7c271f93ffc4ba3b380412554231c85bf61ca7af91042a4112" + +[[package]] +name = "zmij" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" diff --git a/Cargo.toml b/Cargo.toml index 7f919cb77..de664d4d8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -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 } diff --git a/config/base.toml b/config/base.toml index 351426861..858988729 100644 --- a/config/base.toml +++ b/config/base.toml @@ -174,22 +174,6 @@ path = "/share" data = "usr/share" symlink = true -## legacy orbital directories -[[files]] -path = "/ui" -data = "usr/share/ui" -symlink = true - -[[files]] -path = "/usr/share/ui/fonts" -data = "/usr/share/fonts" -symlink = true - -[[files]] -path = "/usr/share/ui/icons" -data = "/usr/share/icons" -symlink = true - ## /var [[files]] path = "/var" diff --git a/config/desktop-contain.toml b/config/desktop-contain.toml index d21c3c2fc..097544365 100644 --- a/config/desktop-contain.toml +++ b/config/desktop-contain.toml @@ -29,5 +29,5 @@ sandbox_schemes = ["file"] files = ["file:/dev/null"] rofiles = ["file:/etc/passwd", "file:/etc/hostname", "file:/etc/localtime"] dirs = ["file:/tmp"] -rodirs = ["file:/bin", "file:/ui"] +rodirs = ["file:/bin"] """ diff --git a/config/x86_64/ci.toml b/config/x86_64/ci.toml index c5723aab4..93b3cea58 100644 --- a/config/x86_64/ci.toml +++ b/config/x86_64/ci.toml @@ -100,6 +100,7 @@ generaluser-gs = {} gettext = {} gigalomania = {} git = {} +gimp = {} glib = {} glutin = {} gnu-binutils = {} @@ -109,6 +110,7 @@ goaccess = {} gobject-introspection = {} gitoxide = {} gstreamer = {} +gzip = {} harfbuzz = {} hicolor-icon-theme = {} helix = {} @@ -256,6 +258,7 @@ rustual-boy = {} rusty-checkers = {} rusty-rain = {} rvvm = {} +scriptisto = {} scummvm = {} sdl-gfx = {} sdl1 = {} diff --git a/flake.nix b/flake.nix index 3226874d5..60ddcb702 100644 --- a/flake.nix +++ b/flake.nix @@ -86,7 +86,8 @@ # with FSTOOLS_IN_PODMAN=1 these are not needed # without it, the installer fails to link FUSE somehow #fuse - qemu_kvm + qemu_kvm # for host arch + qemu ]; LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath buildInputs; diff --git a/mk/ci.mk b/mk/ci.mk index 7fa1542f7..dcf81ccf0 100644 --- a/mk/ci.mk +++ b/mk/ci.mk @@ -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 diff --git a/mk/prefix.mk b/mk/prefix.mk index ac394e30e..98312da9f 100644 --- a/mk/prefix.mk +++ b/mk/prefix.mk @@ -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 @@ -399,7 +424,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 +441,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 +460,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,7 +476,9 @@ 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) \ COOKBOOK_HOST_SYSROOT=/usr COOKBOOK_CROSS_TARGET=$(HOST_TARGET) && \ $(REPO_BIN) cook llvm-rt21 diff --git a/mk/qemu.mk b/mk/qemu.mk index e2e2d819e..af4ec9800 100644 --- a/mk/qemu.mk +++ b/mk/qemu.mk @@ -5,6 +5,9 @@ QEMUFLAGS?=-d guest_errors -name "Redox OS $(ARCH)" netboot?=no redoxer?=no VGA_SUPPORTED=no +# for qemu-relative firmware search +QEMU_PATH?=$(shell command -v $(QEMU)) +QEMU_BASE_DIR?=$(shell if [ $(QEMU_PATH) ]; then realpath $$(dirname $(QEMU_PATH))/..; fi) ifeq ($(ARCH),i586) audio?=ac97 @@ -39,8 +42,7 @@ else ifeq ($(ARCH),x86_64) ifeq ($(FIRMWARE),) PFLASH0=$(firstword \ $(wildcard /usr/share/qemu/edk2-x86_64-code.fd) \ - $(wildcard /run/libvirt/nix-ovmf/edk2-x86_64-code.fd) \ - $(wildcard /opt/homebrew/opt/qemu/share/qemu/edk2s-x86_64-code.fd) \ + $(wildcard $(QEMU_BASE_DIR)/share/qemu/edk2-x86_64-code.fd) \ ) endif endif @@ -78,9 +80,9 @@ else ifeq ($(ARCH),aarch64) ifeq ($(FIRMWARE),) PFLASH0=$(firstword \ $(wildcard /usr/share/qemu/edk2-aarch64-code.fd) \ - $(wildcard /run/libvirt/nix-ovmf/edk2-aarch64-code.fd) \ - $(wildcard /opt/homebrew/opt/qemu/share/qemu/edk2-aarch64-code.fd) \ + $(wildcard $(QEMU_BASE_DIR)/share/qemu/edk2-aarch64-code.fd) \ ) + PFLASH0_NEEDED=yes endif else FIRMWARE=$(BUILD)/qemu_uboot.rom @@ -112,16 +114,16 @@ else ifeq ($(ARCH),riscv64gc) $(wildcard /usr/share/qemu-efi-riscv64/RISCV_VIRT_CODE.fd) \ $(wildcard /usr/share/edk2/riscv/RISCV_VIRT_CODE.fd) \ $(wildcard /usr/share/qemu/edk2-riscv-code.fd) \ - $(wildcard /run/libvirt/nix-ovmf/edk2-riscv-code.fd) \ - $(wildcard /opt/homebrew/opt/qemu/share/qemu/edk2-riscv-code.fd) \ + $(wildcard $(QEMU_BASE_DIR)/share/qemu/edk2-riscv-code.fd) \ ) + PFLASH0_NEEDED=yes PFLASH1=$(firstword \ $(wildcard /usr/share/qemu-efi-riscv64/RISCV_VIRT_VARS.fd) \ $(wildcard /usr/share/edk2/riscv/RISCV_VIRT_VARS.fd) \ $(wildcard /usr/share/qemu/edk2-riscv-vars.fd) \ - $(wildcard /run/libvirt/nix-ovmf/edk2-riscv-vars.fd) \ - $(wildcard /opt/homebrew/opt/qemu/share/qemu/edk2-riscv-vars.fd) \ + $(wildcard $(QEMU_BASE_DIR)/share/qemu/edk2-riscv-vars.fd) \ ) + PFLASH1_NEEDED=yes ifneq ($(usb),no) QEMUFLAGS+=-device qemu-xhci -device usb-kbd -device usb-tablet endif @@ -358,8 +360,13 @@ qemu-deps: $(BUILD)/fw_vars.bin .PRECIOUS: $(BUILD)/fw_vars.bin $(BUILD)/fw_vars.bin: $(PFLASH1) cp "$<" "$@" + chmod +w "$@" endif +qemu-deps: + $(if $(PFLASH0_NEEDED),$(if $(PFLASH0),,$(error UEFI firmware needed but not found)),) + $(if $(PFLASH1_NEEDED),$(if $(PFLASH1),,$(error UEFI variables needed but not found)),) + $(EXTRA_DISK): truncate -s 1g $@ diff --git a/recipes/archives/lz4/recipe.toml b/recipes/archives/lz4/recipe.toml index a45122006..9e6f45753 100644 --- a/recipes/archives/lz4/recipe.toml +++ b/recipes/archives/lz4/recipe.toml @@ -4,7 +4,6 @@ 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" diff --git a/recipes/archives/lz4/redox.patch b/recipes/archives/lz4/redox.patch deleted file mode 100644 index 095ae277d..000000000 --- a/recipes/archives/lz4/redox.patch +++ /dev/null @@ -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 */ - #include /* INT_MAX */ - #include -+#if defined(_REDOX) -+# include /* 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) diff --git a/recipes/archives/xz/recipe.toml b/recipes/archives/xz/recipe.toml index 1512f366c..983a473ca 100644 --- a/recipes/archives/xz/recipe.toml +++ b/recipes/archives/xz/recipe.toml @@ -17,7 +17,6 @@ COOKBOOK_CONFIGURE_FLAGS+=( --disable-lzmainfo --disable-xz --disable-xzdec - --enable-threads=no ) cookbook_configure """ diff --git a/recipes/core/uutils/recipe.toml b/recipes/core/uutils/recipe.toml index 185d690c5..418922d52 100644 --- a/recipes/core/uutils/recipe.toml +++ b/recipes/core/uutils/recipe.toml @@ -19,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=( '[' diff --git a/recipes/cosmic/cosmic-edit/manifest b/recipes/cosmic/cosmic-edit/manifest index 0682999c3..251f2f5d1 100644 --- a/recipes/cosmic/cosmic-edit/manifest +++ b/recipes/cosmic/cosmic-edit/manifest @@ -1,6 +1,6 @@ name=COSMIC Text Editor binary=/bin/cosmic-edit -icon=/usr/share/ui/icons/apps/accessories-text-editor.png +icon=/usr/share/icons/apps/accessories-text-editor.png accept=*.asm accept=*.c accept=*.conf diff --git a/recipes/cosmic/cosmic-files/manifest b/recipes/cosmic/cosmic-files/manifest index 62b4a9668..7a54cd545 100644 --- a/recipes/cosmic/cosmic-files/manifest +++ b/recipes/cosmic/cosmic-files/manifest @@ -1,5 +1,5 @@ name=COSMIC File Manager binary=/bin/cosmic-files -icon=/usr/share/ui/icons/apps/system-file-manager.png +icon=/usr/share/icons/apps/system-file-manager.png author=Jeremy Soller description=COSMIC File Manager diff --git a/recipes/cosmic/cosmic-reader/manifest b/recipes/cosmic/cosmic-reader/manifest index c99e835d2..0aec5bf0c 100644 --- a/recipes/cosmic/cosmic-reader/manifest +++ b/recipes/cosmic/cosmic-reader/manifest @@ -1,6 +1,6 @@ name=COSMIC Reader binary=/bin/cosmic-reader -icon=/usr/share/ui/icons/apps/accessories-text-editor.png +icon=/usr/share/icons/apps/accessories-text-editor.png accept=*.pdf accept=*.epub accept=*.cbz diff --git a/recipes/cosmic/cosmic-term/manifest b/recipes/cosmic/cosmic-term/manifest index 9342f3c4f..c4b2e1cd4 100644 --- a/recipes/cosmic/cosmic-term/manifest +++ b/recipes/cosmic/cosmic-term/manifest @@ -1,5 +1,5 @@ name=COSMIC Terminal binary=/bin/cosmic-term -icon=/usr/share/ui/icons/apps/utilities-terminal.png +icon=/usr/share/icons/apps/utilities-terminal.png author=Jeremy Soller description=COSMIC Terminal diff --git a/recipes/dev/lua54/recipe.toml b/recipes/dev/lua54/recipe.toml index f3fe95bbb..e53c10d29 100644 --- a/recipes/dev/lua54/recipe.toml +++ b/recipes/dev/lua54/recipe.toml @@ -4,6 +4,9 @@ description = "Lua programming language, PUC-Rio distribution, version 5.4" [source] tar = "https://lua.org/ftp/lua-5.4.7.tar.gz" blake3 = "e51c2f347e3185479d5ff95cae8ac77511db486853269443c56bedaa0a6ae629" +patches = [ + "redox.patch" +] [build] template = "custom" diff --git a/recipes/dev/lua54/redox.patch b/recipes/dev/lua54/redox.patch new file mode 100644 index 000000000..f034f573b --- /dev/null +++ b/recipes/dev/lua54/redox.patch @@ -0,0 +1,12 @@ +diff -ruwN source/src/ldo.c source-new/src/ldo.c +--- source/src/ldo.c 2024-06-13 22:15:09.000000000 +0000 ++++ source-new/src/ldo.c 2026-09-30 05:11:35.697677914 +0000 +@@ -60,7 +60,7 @@ + try { a } catch(...) { if ((c)->status == 0) (c)->status = -1; } + #define luai_jmpbuf int /* dummy variable */ + +-#elif defined(LUA_USE_POSIX) /* }{ */ ++#elif defined(LUA_USE_POSIX) && !defined(__redox__) /* }{ */ + + /* in POSIX, try _longjmp/_setjmp (more efficient) */ + #define LUAI_THROW(L,c) _longjmp((c)->b, 1) diff --git a/recipes/dev/patch/02_no_chown.patch b/recipes/dev/patch/01_no_chown.patch similarity index 100% rename from recipes/dev/patch/02_no_chown.patch rename to recipes/dev/patch/01_no_chown.patch diff --git a/recipes/dev/patch/01_no_rlimit.patch b/recipes/dev/patch/01_no_rlimit.patch deleted file mode 100644 index c44b9a960..000000000 --- a/recipes/dev/patch/01_no_rlimit.patch +++ /dev/null @@ -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, diff --git a/recipes/dev/patch/03_renameat2.patch b/recipes/dev/patch/02_renameat2.patch similarity index 100% rename from recipes/dev/patch/03_renameat2.patch rename to recipes/dev/patch/02_renameat2.patch diff --git a/recipes/dev/patch/recipe.toml b/recipes/dev/patch/recipe.toml index c66ea7963..76f2ff423 100644 --- a/recipes/dev/patch/recipe.toml +++ b/recipes/dev/patch/recipe.toml @@ -5,9 +5,8 @@ description = "Tool to apply a diff file to an original" 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" diff --git a/recipes/dev/python312/redox.patch b/recipes/dev/python312/redox.patch index 034194a22..60bf30819 100644 --- a/recipes/dev/python312/redox.patch +++ b/recipes/dev/python312/redox.patch @@ -120,6 +120,18 @@ diff -ruwN source/Modules/_cryptmodule.c source-new/Modules/_cryptmodule.c if (crypt_result == NULL) { return PyErr_SetFromErrno(PyExc_OSError); } +diff -ruwN source/Modules/fcntlmodule.c source-new/Modules/fcntlmodule.c +--- source/Modules/fcntlmodule.c 2025-10-09 11:07:00.000000000 +0000 ++++ source-new/Modules/fcntlmodule.c 2026-10-15 10:21:56.351900218 +0000 +@@ -159,7 +159,7 @@ + in their unsigned long ioctl codes this will break and need + special casing based on the platform being built on. + */ +- int arg = 0; ++ char* arg = 0; + int ret; + Py_buffer pstr; + char *str; diff -ruwN source/Modules/resource.c source-new/Modules/resource.c --- source/Modules/resource.c 2025-10-09 18:07:00.000000000 +0700 +++ source-new/Modules/resource.c 2025-12-09 22:14:30.781035339 +0700 diff --git a/recipes/dev/rust/recipe.toml b/recipes/dev/rust/recipe.toml index 5c4dac129..0ae7125c0 100644 --- a/recipes/dev/rust/recipe.toml +++ b/recipes/dev/rust/recipe.toml @@ -33,9 +33,6 @@ sed -i "s|TARGET|${TARGET}|g" config.toml else DYNAMIC_INIT -# Linker flags for stage2 compiler (host -> target) -ARCH="${TARGET%%-*}" -export CARGO_TARGET_${ARCH^^}_UNKNOWN_REDOX_RUSTFLAGS="${RUSTFLAGS}" # Rust # Hack for Rust errorneusly running `llvm-config --version` on cross compiled llvm-config cat "${COOKBOOK_ROOT}/bin/${TARGET}-llvm-config" > "${COOKBOOK_SYSROOT}/bin/llvm-config" # Hack for Rust stage1 being dynamically linked with LLVM in prefix toolchain diff --git a/recipes/dev/wasi-libc/recipe.toml b/recipes/dev/wasi-libc/recipe.toml index 436f1d9f5..685ab396e 100644 --- a/recipes/dev/wasi-libc/recipe.toml +++ b/recipes/dev/wasi-libc/recipe.toml @@ -10,5 +10,5 @@ shallow_clone = true template = "custom" compiler = "clang" script = """ -cookbook_cmake +cookbook_cmake -DCMAKE_LINK_DEPENDS_USE_LINKER=FALSE """ diff --git a/recipes/emulators/dosbox/manifest b/recipes/emulators/dosbox/manifest index 0381a22fc..408f399a5 100644 --- a/recipes/emulators/dosbox/manifest +++ b/recipes/emulators/dosbox/manifest @@ -1,4 +1,4 @@ name=DOSBox category=Games binary=/bin/dosbox -icon=/usr/share/ui/icons/apps/dosbox.png +icon=/usr/share/icons/apps/dosbox.png diff --git a/recipes/games/classicube/manifest b/recipes/games/classicube/manifest index 58ebf05a3..062877102 100644 --- a/recipes/games/classicube/manifest +++ b/recipes/games/classicube/manifest @@ -1,4 +1,4 @@ name=ClassiCube category=Games binary=/usr/games/classicube/ClassiCube -icon=/usr/share/ui/icons/apps/classicube.png +icon=/usr/share/icons/apps/classicube.png diff --git a/recipes/games/eduke32/manifest b/recipes/games/eduke32/manifest index c9fd63f26..ff3c34740 100644 --- a/recipes/games/eduke32/manifest +++ b/recipes/games/eduke32/manifest @@ -1,4 +1,4 @@ name=EDuke32 category=Games binary=/usr/games/eduke32 -icon=/usr/share/ui/icons/apps/eduke32.png +icon=/usr/share/icons/apps/eduke32.png diff --git a/recipes/games/freedoom/recipe.toml b/recipes/games/freedoom/recipe.toml index 9c16db37b..bfc7da61b 100644 --- a/recipes/games/freedoom/recipe.toml +++ b/recipes/games/freedoom/recipe.toml @@ -20,7 +20,7 @@ do echo "name=$game" | sed 's/freedoom/FreeDOOM: Phase /' | sed 's/doom1/DOOM (Shareware)/' > "${COOKBOOK_STAGE}/usr/share/ui/apps/$game" echo "category=Games" >> "${COOKBOOK_STAGE}/usr/share/ui/apps/$game" echo "binary=/usr/games/$game" >> "${COOKBOOK_STAGE}/usr/share/ui/apps/$game" - echo "icon=/usr/share/ui/icons/apps/$game.png" >> "${COOKBOOK_STAGE}/usr/share/ui/apps/$game" + echo "icon=/usr/share/icons/apps/$game.png" >> "${COOKBOOK_STAGE}/usr/share/ui/apps/$game" cp -v "${COOKBOOK_SOURCE}/$game.png" "${COOKBOOK_STAGE}/usr/share/icons/apps/$game.png" done diff --git a/recipes/games/gigalomania/manifest b/recipes/games/gigalomania/manifest index 8f45b54a2..3792c13a0 100644 --- a/recipes/games/gigalomania/manifest +++ b/recipes/games/gigalomania/manifest @@ -1,4 +1,4 @@ name=Gigalomania category=Games binary=/usr/games/gigalomania/gigalomania -icon=/usr/share/ui/icons/apps/gigalomania.png +icon=/usr/share/icons/apps/gigalomania.png diff --git a/recipes/games/neverball/manifest-neverball b/recipes/games/neverball/manifest-neverball index 89510ee08..39dfb9e71 100644 --- a/recipes/games/neverball/manifest-neverball +++ b/recipes/games/neverball/manifest-neverball @@ -1,4 +1,4 @@ name=Neverball category=Games binary=/usr/games/neverball/neverball -icon=/usr/share/ui/icons/apps/neverball.png +icon=/usr/share/icons/apps/neverball.png diff --git a/recipes/games/neverball/manifest-neverputt b/recipes/games/neverball/manifest-neverputt index 7eb4a2e3f..3fb7bfe92 100644 --- a/recipes/games/neverball/manifest-neverputt +++ b/recipes/games/neverball/manifest-neverputt @@ -1,4 +1,4 @@ name=Neverputt category=Games binary=/usr/games/neverball/neverputt -icon=/usr/share/ui/icons/apps/neverputt.png +icon=/usr/share/icons/apps/neverputt.png diff --git a/recipes/games/openttd-openmsx/recipe.toml b/recipes/games/openttd-openmsx/recipe.toml index bcc542242..47d98c8b0 100644 --- a/recipes/games/openttd-openmsx/recipe.toml +++ b/recipes/games/openttd-openmsx/recipe.toml @@ -7,6 +7,6 @@ git = "https://gitlab.redox-os.org/redox-os/openttd-openmsx.git" [build] template = "custom" script = """ -mkdir -pv "${COOKBOOK_STAGE}/share/games/openttd/baseset/openmsx" -cp -Rv "${COOKBOOK_SOURCE}"/* "${COOKBOOK_STAGE}/share/games/openttd/baseset/openmsx" +mkdir -pv "${COOKBOOK_STAGE}/usr/share/games/openttd/baseset/openmsx" +cp -Rv "${COOKBOOK_SOURCE}"/* "${COOKBOOK_STAGE}/usr/share/games/openttd/baseset/openmsx" """ \ No newline at end of file diff --git a/recipes/games/openttd-opensfx/recipe.toml b/recipes/games/openttd-opensfx/recipe.toml index 1d95500ff..f0882514f 100644 --- a/recipes/games/openttd-opensfx/recipe.toml +++ b/recipes/games/openttd-opensfx/recipe.toml @@ -7,6 +7,6 @@ git = "https://gitlab.redox-os.org/redox-os/openttd-opensfx.git" [build] template = "custom" script = """ -mkdir -pv "${COOKBOOK_STAGE}/share/games/openttd/baseset/opensfx" -cp -Rv "${COOKBOOK_SOURCE}"/* "${COOKBOOK_STAGE}/share/games/openttd/baseset/opensfx" -""" \ No newline at end of file +mkdir -pv "${COOKBOOK_STAGE}/usr/share/games/openttd/baseset/opensfx" +cp -Rv "${COOKBOOK_SOURCE}"/* "${COOKBOOK_STAGE}/usr/share/games/openttd/baseset/opensfx" +""" diff --git a/recipes/games/openttd/recipe.toml b/recipes/games/openttd/recipe.toml index ebc9bf9c6..a2e7c2f10 100644 --- a/recipes/games/openttd/recipe.toml +++ b/recipes/games/openttd/recipe.toml @@ -29,7 +29,7 @@ rsync -av --delete "${COOKBOOK_SOURCE}/" ./ ./configure \\ --build="$(gcc -dumpmachine)" \\ --host="${TARGET}" \\ - --prefix="" \\ + --prefix="/usr" \\ --disable-static \\ --without-liblzo2 \\ --disable-network \\ @@ -40,7 +40,7 @@ make VERBOSE=1 -j"$(nproc)" dest="${COOKBOOK_STAGE}" bundledir="$dest/bundle" -make VERBOSE=1 ROOT_DIR="./" BUNDLE_DIR="$bundledir" INSTALL_DIR="$dest/usr" install +make VERBOSE=1 ROOT_DIR="./" BUNDLE_DIR="$bundledir" INSTALL_DIR="$dest" install rm -rf "$bundledir" if [ -d "${COOKBOOK_STAGE}/usr/bin" ] diff --git a/recipes/games/quakespasm/manifest b/recipes/games/quakespasm/manifest index 3813ede74..fbc74827e 100644 --- a/recipes/games/quakespasm/manifest +++ b/recipes/games/quakespasm/manifest @@ -1,4 +1,4 @@ name=QuakeSpasm category=Games binary=/usr/games/quakespasm -icon=/usr/share/ui/icons/apps/quakespasm.png +icon=/usr/share/icons/apps/quakespasm.png diff --git a/recipes/games/sm64ex/manifest b/recipes/games/sm64ex/manifest index 321fbfc4a..0d01b7235 100644 --- a/recipes/games/sm64ex/manifest +++ b/recipes/games/sm64ex/manifest @@ -1,4 +1,4 @@ name=Super Mario 64 EX category=Games binary=/bin/sm64 -icon=/usr/share/ui/icons/apps/sm64ex.png +icon=/usr/share/icons/apps/sm64ex.png diff --git a/recipes/libs/ffmpeg6/recipe.toml b/recipes/libs/ffmpeg6/recipe.toml index b0410ad26..3de2faec6 100644 --- a/recipes/libs/ffmpeg6/recipe.toml +++ b/recipes/libs/ffmpeg6/recipe.toml @@ -17,10 +17,14 @@ dependencies = [ "sdl2", "zlib", ] +dev-dependencies = [ + "libstdcxx" +] +compiler = "gcc-no-lto" script = """ DYNAMIC_INIT -export LDFLAGS="$LDFLAGS -lSDL2 -lorbital -lOSMesa -lstdc++" +export LDFLAGS="$LDFLAGS -lSDL2 -lorbital -lOSMesa" ARCH="${TARGET%%-*}" COOKBOOK_CONFIGURE_FLAGS=( --enable-cross-compile @@ -34,6 +38,7 @@ COOKBOOK_CONFIGURE_FLAGS=( --disable-network --enable-sdl2 --enable-zlib + --enable-pic --enable-encoder=png --enable-decoder=png ) diff --git a/recipes/libs/gstreamer/recipe.toml b/recipes/libs/gstreamer/recipe.toml index 3641eea79..2eb78b239 100644 --- a/recipes/libs/gstreamer/recipe.toml +++ b/recipes/libs/gstreamer/recipe.toml @@ -11,7 +11,7 @@ template = "custom" dependencies = [ "bzip2", "curl", - #TODO: "ffmpeg6", + "ffmpeg6", "gdk-pixbuf", "libass", "libffi", @@ -21,6 +21,7 @@ dependencies = [ "libsoup", "libwebp", "mesa", + "libfdk-aac", #TODO: "openal", "pango", ] @@ -34,7 +35,7 @@ CFLAGS="${CFLAGS} -DM_LN2=0.69314718055994530942" cookbook_meson \ -Ddevtools=disabled \ -Dexamples=disabled \ - -Dlibav=disabled \ + -Dlibav=enabled \ -Dlibnice=disabled \ -Dorc=disabled \ -Dtests=disabled \ diff --git a/recipes/libs/libarchive/recipe.toml b/recipes/libs/libarchive/recipe.toml index a2c5151fc..2498dd835 100644 --- a/recipes/libs/libarchive/recipe.toml +++ b/recipes/libs/libarchive/recipe.toml @@ -6,4 +6,14 @@ tar = "https://libarchive.org/downloads/libarchive-3.8.7.tar.xz" blake3 = "6b7f744132368a53ecf98a4586af09c255f81cebf37687edd857528a1bfd3bd3" [build] -template = "configure" +template = "cmake" +cmakeflags = [ + "-DENABLE_TEST=OFF" +] +dependencies = [ + "openssl3", + "libxml2", + "bzip2", + "zlib", + "zstd", +] diff --git a/recipes/libs/lua-compat-53/recipe.toml b/recipes/libs/lua-compat-53/recipe.toml index 637193dae..4ea13ba6a 100644 --- a/recipes/libs/lua-compat-53/recipe.toml +++ b/recipes/libs/lua-compat-53/recipe.toml @@ -9,6 +9,10 @@ dependencies = [ "lua54" ] script = """ -mkdir -pv "${COOKBOOK_STAGE}/include" -cp -r "$COOKBOOK_SOURCE/c-api/." "${COOKBOOK_STAGE}/include" +${CC} -O2 -fPIC ${CPPFLAGS} -c "${COOKBOOK_SOURCE}/c-api/compat-5.3.c" -o compat-5.3.o +${AR} rcs libcompat53.a compat-5.3.o + +mkdir -p "${COOKBOOK_STAGE}/usr/lib" "${COOKBOOK_STAGE}/usr/include" +cp libcompat53.a "${COOKBOOK_STAGE}/usr/lib/" +cp "${COOKBOOK_SOURCE}/c-api/compat-5.3.h" "${COOKBOOK_STAGE}/usr/include/" """ diff --git a/recipes/net/rsync/recipe.toml b/recipes/net/rsync/recipe.toml index 807ea9c23..6727eebf2 100644 --- a/recipes/net/rsync/recipe.toml +++ b/recipes/net/rsync/recipe.toml @@ -2,8 +2,8 @@ description = "Fast, versatile remote (and local) file-copying tool" [source] -tar = "https://download.samba.org/pub/rsync/src/rsync-3.4.1.tar.gz" -blake3 = "e1cfdd51a1a89a49e73f8fa730a4321392fe4a29533c0979c2c09c7ce3808b6f" +tar = "https://download.samba.org/pub/rsync/src/rsync-3.5.1.tar.gz" +blake3 = "bafd113fecb286d462dbb0455078421a72fc73f3360a6c9f05c369f1c8707e1b" [build] template = "configure" @@ -13,3 +13,7 @@ dependencies = [ "openssl3", "xxhash", ] +# TODO: libidn failing on libunistring (requires gnulib fseterr) +configureflags = [ + "--disable-idn" +] diff --git a/recipes/terminal/bash-completion/recipe.toml b/recipes/terminal/bash-completion/recipe.toml index 39c8ed965..581f5364f 100644 --- a/recipes/terminal/bash-completion/recipe.toml +++ b/recipes/terminal/bash-completion/recipe.toml @@ -12,5 +12,5 @@ configureflags = [ [package] description = "Collection of command-line completion recipes for Bash" dependencies = [ - "sed", + "uutils-sed", ] diff --git a/recipes/text/nano/recipe.toml b/recipes/text/nano/recipe.toml index 2e3a68a3b..c09c2e8cc 100644 --- a/recipes/text/nano/recipe.toml +++ b/recipes/text/nano/recipe.toml @@ -1,9 +1,6 @@ [source] tar = "https://www.nano-editor.org/dist/v9/nano-9.2.tar.xz" blake3 = "6a4dd380f6ee2bb2d74851c182090774f61eddfc37d9ff4d060b69f2c0fe4646" -patches = [ - "redox.patch" -] [build] template = "configure" diff --git a/recipes/text/nano/redox.patch b/recipes/text/nano/redox.patch deleted file mode 100644 index 83aa91e02..000000000 --- a/recipes/text/nano/redox.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --color -ruwN source/lib/fseterr.c source-new/lib/fseterr.c ---- source/lib/fseterr.c 2026-07-31 13:13:07.000000000 +0700 -+++ source-new/lib/fseterr.c 2026-08-19 21:12:05.375336440 +0700 -@@ -53,7 +53,7 @@ - #elif defined EPLAN9 /* Plan9 */ - if (fp->state != 0 /* CLOSED */) - fp->state = 5 /* ERR */; --#elif 0 /* unknown */ -+#elif defined __redox__ /* unknown */ - /* Portable fallback, based on an idea by Rich Felker. - Wow! 6 system calls for something that is just a bit operation! - Not activated on any system, because there is no way to repair FP when diff --git a/recipes/tools/gnu-grep/grep.patch b/recipes/tools/gnu-grep/grep.patch index 8b3d8b98e..311f82263 100644 --- a/recipes/tools/gnu-grep/grep.patch +++ b/recipes/tools/gnu-grep/grep.patch @@ -1,23 +1,4 @@ Only in source: grep.patch -diff -ru source/lib/getdtablesize.c source-new/lib/getdtablesize.c ---- source/lib/getdtablesize.c 2017-07-23 20:50:44.287742363 -0700 -+++ source-new/lib/getdtablesize.c 2017-07-23 20:51:06.271284748 -0700 -@@ -109,15 +109,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; - } - diff -ru source/lib/getprogname.c source-new/lib/getprogname.c --- source/lib/getprogname.c 2017-01-16 09:29:13.000000000 -0800 +++ source-new/lib/getprogname.c 2017-07-23 20:49:21.133618122 -0700 diff --git a/recipes/web/netsurf/manifest b/recipes/web/netsurf/manifest index a9ae25704..49c80bb5e 100644 --- a/recipes/web/netsurf/manifest +++ b/recipes/web/netsurf/manifest @@ -1,6 +1,6 @@ name=Netsurf binary=/usr/bin/netsurf-fb -icon=/usr/share/ui/icons/apps/internet-web-browser.png +icon=/usr/share/icons/apps/internet-web-browser.png accept=*.html author=The Netsurf Developers description=Browser for Redox diff --git a/recipes/web/netsurf/recipe.toml b/recipes/web/netsurf/recipe.toml index a109c5716..2c714263c 100644 --- a/recipes/web/netsurf/recipe.toml +++ b/recipes/web/netsurf/recipe.toml @@ -30,9 +30,6 @@ DYNAMIC_INIT # Netsurf does not currently support out-of-tree builds :( rsync -av --delete "${COOKBOOK_SOURCE}/" ./ -# obscure crash from sccache if jobs number is too much -COOKBOOK_MAKE_JOBS="$(( ${COOKBOOK_MAKE_JOBS} > 8 ? 8 : ${COOKBOOK_MAKE_JOBS} ))" - export TARGET="framebuffer" export CFLAGS="-I${PWD}/inst-${TARGET}/include" export LDFLAGS="${LDFLAGS} -L${COOKBOOK_SYSROOT}/lib -L${PWD}/inst-${TARGET}/lib -Wl,--allow-multiple-definition -Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib" diff --git a/recipes/wip/analysis/binsider/recipe.toml b/recipes/wip/analysis/binsider/recipe.toml index 5ae452ec2..7278d38d2 100644 --- a/recipes/wip/analysis/binsider/recipe.toml +++ b/recipes/wip/analysis/binsider/recipe.toml @@ -1,4 +1,4 @@ -#TODO async-io and rustix crates error +#TODO lurk-cli crate error [source] git = "https://github.com/orhun/binsider" shallow_clone = true diff --git a/recipes/wip/analysis/cutter/recipe.toml b/recipes/wip/analysis/cutter/recipe.toml index e90cf181f..2e2272f81 100644 --- a/recipes/wip/analysis/cutter/recipe.toml +++ b/recipes/wip/analysis/cutter/recipe.toml @@ -1,13 +1,13 @@ -#TODO not compiled or tested +#TODO can't find qt6 dep cmake config #TODO determine minimum dependencies from cmake log # build instructions: https://cutter.re/docs/building.html [source] tar = "https://github.com/rizinorg/cutter/releases/download/v2.4.1/Cutter-v2.4.1-src.tar.gz" [build] template = "cmake" -#dependencies = [ +dependencies = [ # "libzip", # "zlib", -# "qt6-base", + "qt6-base", # "qt6-svg", -#] +] diff --git a/recipes/wip/analysis/email-sleuth/recipe.toml b/recipes/wip/analysis/email-sleuth/recipe.toml index e06b0ab8a..c5207ffee 100644 --- a/recipes/wip/analysis/email-sleuth/recipe.toml +++ b/recipes/wip/analysis/email-sleuth/recipe.toml @@ -1,6 +1,7 @@ -#TODO openssl-sys crate error +#TODO openssl-sys crate error, make it use openssl3 recipe [source] git = "https://github.com/tokenizer-decode/email-sleuth" shallow_clone = true [build] template = "cargo" +dependencies = ["openssl3"] \ No newline at end of file diff --git a/recipes/wip/analysis/flowgger/recipe.toml b/recipes/wip/analysis/flowgger/recipe.toml index 6580d5b2b..0ff474859 100644 --- a/recipes/wip/analysis/flowgger/recipe.toml +++ b/recipes/wip/analysis/flowgger/recipe.toml @@ -1,7 +1,9 @@ -#TODO not compiled or tested +#TODO can't find protobuf # build instructions: https://github.com/awslabs/flowgger/wiki/Installation [source] git = "https://github.com/awslabs/flowgger" shallow_clone = true [build] template = "cargo" +dev-dependencies = ["host:protobuf"] +dependencies = ["openssl3"] diff --git a/recipes/wip/analysis/mmdr/recipe.toml b/recipes/wip/analysis/mmdr/recipe.toml index b6ed021a9..083cf0b65 100644 --- a/recipes/wip/analysis/mmdr/recipe.toml +++ b/recipes/wip/analysis/mmdr/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/1jehuang/mermaid-rs-renderer" shallow_clone = true diff --git a/recipes/wip/analysis/netdata/recipe.toml b/recipes/wip/analysis/netdata/recipe.toml index 632558adb..edb3753f0 100644 --- a/recipes/wip/analysis/netdata/recipe.toml +++ b/recipes/wip/analysis/netdata/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO port: unsupported platform, UnixPaths # build instructions: https://learn.netdata.cloud/docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/compile-from-source-code#building-netdata [source] tar = "https://github.com/netdata/netdata/releases/download/v2.8.5/netdata-v2.8.5.tar.gz" diff --git a/recipes/wip/analysis/radare2/recipe.toml b/recipes/wip/analysis/radare2/recipe.toml index 6c1448cb9..6a0006a47 100644 --- a/recipes/wip/analysis/radare2/recipe.toml +++ b/recipes/wip/analysis/radare2/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't find exe_wrapper [source] tar = "https://github.com/radareorg/radare2/releases/download/6.1.4/radare2-6.1.4.tar.xz" [build] diff --git a/recipes/wip/analysis/rizin/recipe.toml b/recipes/wip/analysis/rizin/recipe.toml index f19402467..28a38fd48 100644 --- a/recipes/wip/analysis/rizin/recipe.toml +++ b/recipes/wip/analysis/rizin/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO can't find pcre2 dep # build instructions: https://github.com/rizinorg/rizin/blob/dev/BUILDING.md [source] tar = "https://github.com/rizinorg/rizin/releases/download/v0.8.1/rizin-src-v0.8.1.tar.xz" @@ -8,3 +8,6 @@ mesonflags = [ "-Denable_tests=false", "-Denable_rz_test=false", ] +dependencies = [ + "pcre2", +] diff --git a/recipes/wip/analysis/tmmpr/recipe.toml b/recipes/wip/analysis/tmmpr/recipe.toml index 21974edfd..152950a68 100644 --- a/recipes/wip/analysis/tmmpr/recipe.toml +++ b/recipes/wip/analysis/tmmpr/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/tanciaku/tmmpr" shallow_clone = true diff --git a/recipes/wip/archives/7zip/recipe.toml b/recipes/wip/archives/7zip/recipe.toml index 4c9686ddd..1bab446bf 100644 --- a/recipes/wip/archives/7zip/recipe.toml +++ b/recipes/wip/archives/7zip/recipe.toml @@ -1,5 +1,5 @@ -#TODO missing script for gnu make: https://github.com/mcmilk/7-Zip/tree/master/DOC#readme +#TODO add script for gnu make: https://github.com/ip7z/7zip/blob/main/DOC/readme.txt#L110 [source] -tar = "https://7-zip.org/a/7z2301-src.tar.xz" +tar = "https://7-zip.org/a/7z2605-src.tar.xz" [build] template = "cmake" diff --git a/recipes/wip/archives/gnu-tar/recipe.toml b/recipes/wip/archives/gnu-tar/recipe.toml index e96199b08..9e7528579 100644 --- a/recipes/wip/archives/gnu-tar/recipe.toml +++ b/recipes/wip/archives/gnu-tar/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix gzip dep [source] tar = "https://ftp.gnu.org/gnu/tar/tar-1.35.tar.bz2" [build] diff --git a/recipes/wip/archives/gzip/recipe.toml b/recipes/wip/archives/gzip/recipe.toml index 9e94309a5..e27f3bef8 100644 --- a/recipes/wip/archives/gzip/recipe.toml +++ b/recipes/wip/archives/gzip/recipe.toml @@ -1,5 +1,7 @@ -#TODO not compiled or tested [source] -tar = "https://ftp.gnu.org/gnu/gzip/gzip-1.14.tar.gz" +tar = "https://ftp.gnu.org/gnu/gzip/gzip-1.15.tar.gz" [build] template = "configure" +configureflags = [ + "ac_cv_have_decl___fseterr=yes" +] diff --git a/recipes/wip/archives/hatchzip/recipe.toml b/recipes/wip/archives/hatchzip/recipe.toml new file mode 100644 index 000000000..f8f0f4214 --- /dev/null +++ b/recipes/wip/archives/hatchzip/recipe.toml @@ -0,0 +1,11 @@ +#TODO build error: HatchZip has no platform module for this system yet; add one in src/platform/ +[source] +git = "https://github.com/xevrion/hatchzip" +shallow_clone = true +[build] +template = "cargo" +cargopackages = [ + "hatchzip", + "hatchzip-gui", +] +#dependencies = ["fontconfig"] # needed? diff --git a/recipes/wip/archives/orz/recipe.toml b/recipes/wip/archives/orz/recipe.toml index cf82b62ae..948d5a7e3 100644 --- a/recipes/wip/archives/orz/recipe.toml +++ b/recipes/wip/archives/orz/recipe.toml @@ -1,4 +1,4 @@ -#TODO don't run +#TODO can't run [source] git = "https://github.com/richox/orz" shallow_clone = true diff --git a/recipes/wip/archives/ouch/recipe.toml b/recipes/wip/archives/ouch/recipe.toml index 9bc40883a..57b57260f 100644 --- a/recipes/wip/archives/ouch/recipe.toml +++ b/recipes/wip/archives/ouch/recipe.toml @@ -1,4 +1,4 @@ -#TODO compilation error +#TODO unrar-ng-sys crate error [source] git = "https://github.com/ouch-org/ouch" shallow_clone = true diff --git a/recipes/wip/archives/unrar/recipe.toml b/recipes/wip/archives/unrar/recipe.toml index a1a1e9dee..28d140034 100644 --- a/recipes/wip/archives/unrar/recipe.toml +++ b/recipes/wip/archives/unrar/recipe.toml @@ -1,5 +1,11 @@ -#TODO missing script for gnu make, read the makefile in the tarball +#TODO not compiled or tested [source] tar = "https://www.rarlab.com/rar/unrarsrc-7.2.6.tar.gz" [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" unrar lib -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install-unrar install-lib DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/archives/unzip-rs/recipe.toml b/recipes/wip/archives/unzip-rs/recipe.toml index c2407fdf8..898ac4b8b 100644 --- a/recipes/wip/archives/unzip-rs/recipe.toml +++ b/recipes/wip/archives/unzip-rs/recipe.toml @@ -1,5 +1,5 @@ # the rust reimplementation is prefered over c implementation, which is abandoned with security bugs: https://github.com/quininer/unzrip#safety -#TODO compile and test +#TODO compiled but not tested (after cargo update) [source] git = "https://github.com/quininer/unzrip" shallow_clone = true diff --git a/recipes/wip/bench/bencher/recipe.toml b/recipes/wip/bench/bencher/recipe.toml index e58099dea..2974a0e73 100644 --- a/recipes/wip/bench/bencher/recipe.toml +++ b/recipes/wip/bench/bencher/recipe.toml @@ -1,8 +1,12 @@ -#TODO compile and test +#TODO compiled but untested +#TODO add command for installation # self-hosted documentation: https://bencher.dev/docs/explanation/bencher-self-hosted/ [source] git = "https://github.com/bencherdev/bencher" shallow_clone = true [build] -template = "cargo" -cargopackages = ["bencher_cli"] +template = "custom" +script = """ +DYNAMIC_INIT +cookbook_cargo_packages bencher_cli +""" diff --git a/recipes/wip/bench/fearless-simd/recipe.toml b/recipes/wip/bench/fearless-simd/recipe.toml index dd7af0cc9..21f4dde5a 100644 --- a/recipes/wip/bench/fearless-simd/recipe.toml +++ b/recipes/wip/bench/fearless-simd/recipe.toml @@ -1,10 +1,10 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/linebender/fearless_simd" shallow_clone = true [build] template = "cargo" -cargopath = "fearless_simd/examples" +cargopath = "fearless_simd" cargoexamples = [ "sigmoid", "sigmoid_generic", diff --git a/recipes/wip/bench/hpc/hpcg/recipe.toml b/recipes/wip/bench/hpc/hpcg/recipe.toml index ce49a0c58..52426d740 100644 --- a/recipes/wip/bench/hpc/hpcg/recipe.toml +++ b/recipes/wip/bench/hpc/hpcg/recipe.toml @@ -1,6 +1,10 @@ -#TODO not compiled or tested +#TODO ninja error: unknown target 'install' [source] git = "https://github.com/hpcg-benchmark/hpcg" shallow_clone = true [build] -template = "cmake" +template = "custom" +script = """ +DYNAMIC_INIT +cookbook_cmake +""" diff --git a/recipes/wip/bench/hpc/minibude/recipe.toml b/recipes/wip/bench/hpc/minibude/recipe.toml index b63b712dc..11f8dfafb 100644 --- a/recipes/wip/bench/hpc/minibude/recipe.toml +++ b/recipes/wip/bench/hpc/minibude/recipe.toml @@ -1,6 +1,7 @@ -#TODO missing script for gnu make: https://github.com/UoB-HPC/miniBUDE#building +#TODO build and test +#TODO does a model need to be chosen?: https://github.com/UoB-HPC/miniBUDE#building [source] git = "https://github.com/UoB-HPC/miniBUDE" shallow_clone = true [build] -template = "custom" +template = "cmake" diff --git a/recipes/wip/bench/hyperfine/recipe.toml b/recipes/wip/bench/hyperfine/recipe.toml index 4b963663f..b30b9b3d1 100644 --- a/recipes/wip/bench/hyperfine/recipe.toml +++ b/recipes/wip/bench/hyperfine/recipe.toml @@ -1,4 +1,4 @@ -#TODO libc::RUSAGE_CHILDREN +#TODO cannot find function `wait4` in crate `libc` [source] git = "https://github.com/sharkdp/hyperfine" shallow_clone = true diff --git a/recipes/wip/bench/io/blogbench/recipe.toml b/recipes/wip/bench/io/blogbench/recipe.toml index 836166900..6a4b72139 100644 --- a/recipes/wip/bench/io/blogbench/recipe.toml +++ b/recipes/wip/bench/io/blogbench/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO syntax error near unexpected token `newline' # build instructions: https://github.com/jedisct1/Blogbench/blob/master/README#L18 [source] tar = "https://github.com/jedisct1/Blogbench/releases/download/1.2/blogbench-1.2.tar.bz2" diff --git a/recipes/wip/bench/io/fio/recipe.toml b/recipes/wip/bench/io/fio/recipe.toml index eb41050c4..ef6f29606 100644 --- a/recipes/wip/bench/io/fio/recipe.toml +++ b/recipes/wip/bench/io/fio/recipe.toml @@ -1,7 +1,10 @@ -#TODO configuration problem +#TODO bad configure options [source] git = "https://github.com/axboe/fio" rev = "fio-3.41" shallow_clone = true [build] template = "configure" +configureflags = [ + "--disable-native", +] diff --git a/recipes/wip/bench/io/simple-disk-benchmark/recipe.toml b/recipes/wip/bench/io/simple-disk-benchmark/recipe.toml index 4fe40d717..4aba8fc1f 100644 --- a/recipes/wip/bench/io/simple-disk-benchmark/recipe.toml +++ b/recipes/wip/bench/io/simple-disk-benchmark/recipe.toml @@ -1,6 +1,6 @@ #TODO source code error [source] -git = "https://github.com/schwa/simple-disk-benchmark-rs" +git = "https://github.com/isan-Ethen/simple-disk-benchmark-rs" shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/bench/jasonisnthappy/recipe.toml b/recipes/wip/bench/jasonisnthappy/recipe.toml index 1c1d91b1b..22aaaf848 100644 --- a/recipes/wip/bench/jasonisnthappy/recipe.toml +++ b/recipes/wip/bench/jasonisnthappy/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO port fs2 crate [source] git = "https://github.com/sohzm/jasonisnthappy" shallow_clone = true diff --git a/recipes/wip/bench/nanobench/recipe.toml b/recipes/wip/bench/nanobench/recipe.toml index a54415f7d..21eecc515 100644 --- a/recipes/wip/bench/nanobench/recipe.toml +++ b/recipes/wip/bench/nanobench/recipe.toml @@ -1,4 +1,7 @@ -#TODO build the userspace implementation: https://github.com/andreas-abel/nanoBench#user-space-version +# userspace implementation: https://github.com/andreas-abel/nanoBench#user-space-version +#TODO build and test +#TODO add command for installation +#TODO package msr-tools: https://01.org/sites/default/files/downloads/msr-tools/msr-tools-1.3.zip [source] git = "https://github.com/andreas-abel/nanoBench" rev = "36c077fd30db11e8c83cedfcb58daa505d1d0b12" @@ -9,3 +12,8 @@ template = "custom" dependencies = [ "python312", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" user -j "${COOKBOOK_MAKE_JOBS}" +""" diff --git a/recipes/wip/bench/rayon/recipe.toml b/recipes/wip/bench/rayon/recipe.toml index 99a82f714..754d54316 100644 --- a/recipes/wip/bench/rayon/recipe.toml +++ b/recipes/wip/bench/rayon/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO glutin crate error [source] git = "https://github.com/rayon-rs/rayon" shallow_clone = true diff --git a/recipes/wip/bench/rodinia/recipe.toml b/recipes/wip/bench/rodinia/recipe.toml index 460e2dfd2..23840b7a1 100644 --- a/recipes/wip/bench/rodinia/recipe.toml +++ b/recipes/wip/bench/rodinia/recipe.toml @@ -1,5 +1,11 @@ -#TODO missing script for gnu make, build the openmp (cpu backend?) or opencl implementation +#TODO build and test [source] tar = "http://www.cs.virginia.edu/~skadron/lava/rodinia/Packages/rodinia_3.1.tar.bz2" [build] template = "custom" +dependencies = ["openmp"] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" OMP -j "${COOKBOOK_MAKE_JOBS}" +""" diff --git a/recipes/wip/bench/rpc-perf/recipe.toml b/recipes/wip/bench/rpc-perf/recipe.toml index 85678820c..d1d9571e4 100644 --- a/recipes/wip/bench/rpc-perf/recipe.toml +++ b/recipes/wip/bench/rpc-perf/recipe.toml @@ -1,4 +1,5 @@ -#TODO not compiled or tested +#TODO outdated metriken-core crate +#TODO metriken-core crate error: distributed_slice is not implemented for this platform [source] git = "https://github.com/iopsystems/rpc-perf" shallow_clone = true diff --git a/recipes/wip/bench/rsb/recipe.toml b/recipes/wip/bench/rsb/recipe.toml index f065b7c8d..3eb41f4ae 100644 --- a/recipes/wip/bench/rsb/recipe.toml +++ b/recipes/wip/bench/rsb/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO openssl-sys crate error, make it use openssl3 recipe [source] git = "https://github.com/gamelife1314/rsb" shallow_clone = true [build] template = "cargo" +dependencies = ["openssl3"] diff --git a/recipes/wip/bench/stress-ng/recipe.toml b/recipes/wip/bench/stress-ng/recipe.toml index eba47cd9c..e28d80584 100644 --- a/recipes/wip/bench/stress-ng/recipe.toml +++ b/recipes/wip/bench/stress-ng/recipe.toml @@ -1,4 +1,4 @@ -#TODO missing script for gnu make: https://github.com/ColinIanKing/stress-ng#building-stress-ng +#TODO '_SC_MAPPED_FILES' undeclared #TODO determine minimum dependencies [source] git = "https://github.com/ColinIanKing/stress-ng" @@ -19,3 +19,9 @@ template = "custom" # "zlib", # "mesa", #] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/bench/suite/pts/recipe.toml b/recipes/wip/bench/suite/pts/recipe.toml index 854a2e92b..47bac2719 100644 --- a/recipes/wip/bench/suite/pts/recipe.toml +++ b/recipes/wip/bench/suite/pts/recipe.toml @@ -1,4 +1,4 @@ -#TODO figure out the installation script - https://github.com/phoronix-test-suite/phoronix-test-suite +#TODO test [source] git = "https://github.com/phoronix-test-suite/phoronix-test-suite" shallow_clone = true diff --git a/recipes/wip/cosmic/cosmic-player/manifest b/recipes/wip/cosmic/cosmic-player/manifest index f87b03905..ad87b493f 100644 --- a/recipes/wip/cosmic/cosmic-player/manifest +++ b/recipes/wip/cosmic/cosmic-player/manifest @@ -1,6 +1,6 @@ name=COSMIC Media Player binary=/usr/bin/cosmic-player -icon=/usr/share/ui/icons/apps/multimedia-photo-viewer.png +icon=/usr/share/icons/apps/multimedia-photo-viewer.png author=Jeremy Soller description=COSMIC Media Player accept=*.avi diff --git a/recipes/wip/data/poppler-data/recipe.toml b/recipes/wip/data/poppler-data/recipe.toml index 3262c088a..9ff376f19 100644 --- a/recipes/wip/data/poppler-data/recipe.toml +++ b/recipes/wip/data/poppler-data/recipe.toml @@ -2,4 +2,4 @@ [source] tar = "https://poppler.freedesktop.org/poppler-data-0.4.12.tar.gz" [build] -template = "custom" +template = "cmake" diff --git a/recipes/wip/demos/anima/recipe.toml b/recipes/wip/demos/anima/recipe.toml index f53447d79..4550c56f5 100644 --- a/recipes/wip/demos/anima/recipe.toml +++ b/recipes/wip/demos/anima/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/Yazelix/anima" shallow_clone = true diff --git a/recipes/wip/demos/ascii-rain/recipe.toml b/recipes/wip/demos/ascii-rain/recipe.toml new file mode 100644 index 000000000..90c36a65d --- /dev/null +++ b/recipes/wip/demos/ascii-rain/recipe.toml @@ -0,0 +1,14 @@ +#TODO compile and test +[source] +git = "https://github.com/nkleemann/ascii-rain" +rev = "39396dea0a84b4580f0ee5f46de9de4468566ed0" +shallow_clone = true +[build] +template = "custom" +dependencies = ["ncursesw"] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/rain.c" ./ +mkdir -pv "${COOKBOOK_STAGE}/usr/bin" +DYNAMIC_INIT +"${COOKBOOK_CC}" rain.c -o "${COOKBOOK_STAGE}"/usr/bin/rain -lncurses +""" diff --git a/recipes/wip/demos/black-hole-glfw/recipe.toml b/recipes/wip/demos/black-hole-glfw/recipe.toml index 55d5e100d..29bbb6734 100644 --- a/recipes/wip/demos/black-hole-glfw/recipe.toml +++ b/recipes/wip/demos/black-hole-glfw/recipe.toml @@ -1,13 +1,18 @@ -#TODO compile and test +#TODO compiled but untested +#TODO ninja error: unknown target 'install' [source] git = "https://github.com/kavan010/black_hole" rev = "dc263bb5a1b72f5a24190d2e38b84b5c8fe9a317" shallow_clone = true [build] -template = "cmake" +template = "custom" dependencies = [ "glew", "glfw3", - "glm", - "mesa-x11", + "libglm", + "mesa", ] +script = """ +DYNAMIC_INIT +cookbook_cmake +""" diff --git a/recipes/wip/demos/black-hole-sdl/recipe.toml b/recipes/wip/demos/black-hole-sdl/recipe.toml index 6dbe52959..e39439f1c 100644 --- a/recipes/wip/demos/black-hole-sdl/recipe.toml +++ b/recipes/wip/demos/black-hole-sdl/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO fix sdl3 dep [source] git = "https://github.com/jsoulier/black_hole_simulation" rev = "6205903db7f22d86d2dbc328831bfc2f68108b7a" diff --git a/recipes/wip/demos/fonterator/recipe.toml b/recipes/wip/demos/fonterator/recipe.toml index d9de36d5f..0f0f33014 100644 --- a/recipes/wip/demos/fonterator/recipe.toml +++ b/recipes/wip/demos/fonterator/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/ardaku/fonterator" shallow_clone = true diff --git a/recipes/wip/demos/franken-solver/recipe.toml b/recipes/wip/demos/franken-solver/recipe.toml index 6f3ba2800..500f03333 100644 --- a/recipes/wip/demos/franken-solver/recipe.toml +++ b/recipes/wip/demos/franken-solver/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO build error: can be cross-compiled? [source] git = "https://github.com/prp/franken-solver" shallow_clone = true diff --git a/recipes/wip/demos/gl-flightsim/recipe.toml b/recipes/wip/demos/gl-flightsim/recipe.toml index d52156af3..2fcebe202 100644 --- a/recipes/wip/demos/gl-flightsim/recipe.toml +++ b/recipes/wip/demos/gl-flightsim/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO GLM_GTX_component_wise is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it. [source] git = "https://github.com/gue-ni/OpenGL_Flightsim" rev = "7b865b085e18fc3b9e242651f3bd12073e3071dd" @@ -9,9 +9,10 @@ dependencies = [ "sdl2", "sdl2-image", "glew", - "glm", + "libglm", ] script = """ +COOKBOOK_SOURCE="${COOKBOOK_SOURCE}/OpenGL_Flightsim" DYNAMIC_INIT -cookbook_cmake "${COOKBOOK_SOURCE}"/OpenGL_Flightsim +cookbook_cmake """ diff --git a/recipes/wip/demos/myth/recipe.toml b/recipes/wip/demos/myth/recipe.toml index 3214aa415..651063b85 100644 --- a/recipes/wip/demos/myth/recipe.toml +++ b/recipes/wip/demos/myth/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO rfd crate error [source] git = "https://github.com/panxinmiao/myth" shallow_clone = true diff --git a/recipes/wip/demos/nibble/recipe.toml b/recipes/wip/demos/nibble/recipe.toml index 7198424ab..e817a7648 100644 --- a/recipes/wip/demos/nibble/recipe.toml +++ b/recipes/wip/demos/nibble/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/Vaishnav-Sabari-Girish/nibble" shallow_clone = true diff --git a/recipes/wip/demos/nms/recipe.toml b/recipes/wip/demos/nms/recipe.toml new file mode 100644 index 000000000..f7393e1ba --- /dev/null +++ b/recipes/wip/demos/nms/recipe.toml @@ -0,0 +1,14 @@ +#TODO compiled but untested +[source] +git = "https://github.com/bartobri/no-more-secrets" +rev = "v1.0.1" +shallow_clone = true +[build] +template = "custom" +#dependencies = ["ncursesw"] # enable if needed +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" nms -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/demos/nobubbles/recipe.toml b/recipes/wip/demos/nobubbles/recipe.toml index 891d6b095..bc514db62 100644 --- a/recipes/wip/demos/nobubbles/recipe.toml +++ b/recipes/wip/demos/nobubbles/recipe.toml @@ -4,3 +4,7 @@ git = "https://github.com/romancitodev/nobubbles" shallow_clone = true [build] template = "cargo" +cargoexamples = [ + "counter", + "fx", +] diff --git a/recipes/wip/demos/orbit-sim/recipe.toml b/recipes/wip/demos/orbit-sim/recipe.toml index 734049224..f95ccf83e 100644 --- a/recipes/wip/demos/orbit-sim/recipe.toml +++ b/recipes/wip/demos/orbit-sim/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO fix raylib dep [source] git = "https://github.com/IceWizard7/simulation-orbit" rev = "e772641909df7a0876093b9ffea0377e5bea82bf" diff --git a/recipes/wip/demos/plush/recipe.toml b/recipes/wip/demos/plush/recipe.toml index 4ea8b4ff9..a62bb27e8 100644 --- a/recipes/wip/demos/plush/recipe.toml +++ b/recipes/wip/demos/plush/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO error[E0658]: use of unstable library feature `float_algebraic` [source] git = "https://github.com/maximecb/plush" shallow_clone = true diff --git a/recipes/wip/demos/raclettui/recipe.toml b/recipes/wip/demos/raclettui/recipe.toml index 2664fda42..713174ba6 100644 --- a/recipes/wip/demos/raclettui/recipe.toml +++ b/recipes/wip/demos/raclettui/recipe.toml @@ -4,8 +4,4 @@ git = "https://github.com/ishrut/raclettui" shallow_clone = true [build] template = "cargo" -cargoexamples = [ - "cpu_ratatui", - "test", - "wgpu_ratatui", -] +cargoexamples = ["hello"] diff --git a/recipes/wip/demos/ratatui-3d/recipe.toml b/recipes/wip/demos/ratatui-3d/recipe.toml index 75281b35e..ad91edaea 100644 --- a/recipes/wip/demos/ratatui-3d/recipe.toml +++ b/recipes/wip/demos/ratatui-3d/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] git = "https://github.com/limlabs/ratatui-3d" shallow_clone = true @@ -7,6 +7,5 @@ template = "cargo" cargoflags = ["--no-default-features --features=gltf,gpu"] cargoexamples = [ "cornell", - "cube", "dna", ] diff --git a/recipes/wip/demos/rayt/recipe.toml b/recipes/wip/demos/rayt/recipe.toml index 2d4745060..11a5ed7f7 100644 --- a/recipes/wip/demos/rayt/recipe.toml +++ b/recipes/wip/demos/rayt/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO termios crate error (after cargo update) [source] git = "https://github.com/Dalamar42/rayt" shallow_clone = true diff --git a/recipes/wip/demos/raytracer-rs/recipe.toml b/recipes/wip/demos/raytracer-rs/recipe.toml index 85d20ec48..bc6a6d3d9 100644 --- a/recipes/wip/demos/raytracer-rs/recipe.toml +++ b/recipes/wip/demos/raytracer-rs/recipe.toml @@ -1,10 +1,9 @@ -#TODO compile and test +#TODO error[E0425]: cannot find function, tuple struct or tuple variant `ImageRgb8` in crate `image` [source] git = "https://github.com/ranveeraggarwal/rust-raytracer" shallow_clone = true [build] template = "cargo" -cargopath = "examples" cargoexamples = [ "basic_sphere", "one_weekend", diff --git a/recipes/wip/demos/rs-cube/recipe.toml b/recipes/wip/demos/rs-cube/recipe.toml index 905672677..8ec319366 100644 --- a/recipes/wip/demos/rs-cube/recipe.toml +++ b/recipes/wip/demos/rs-cube/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] git = "https://github.com/doprz/rs-cube" shallow_clone = true diff --git a/recipes/wip/demos/rustracer/recipe.toml b/recipes/wip/demos/rustracer/recipe.toml index 8e60fe877..8b845c23f 100644 --- a/recipes/wip/demos/rustracer/recipe.toml +++ b/recipes/wip/demos/rustracer/recipe.toml @@ -1,7 +1,7 @@ -#TODO compile and test +#TODO shared_library crate error: cannot find module or crate `dl` in this scope [source] git = "https://github.com/KaminariOS/rustracer" shallow_clone = true [build] template = "cargo" -cargoexamples = ["gltf-renderer"] +cargopackages = ["gltf-renderer"] diff --git a/recipes/wip/demos/scamp-cat/recipe.toml b/recipes/wip/demos/scamp-cat/recipe.toml index 449b7cafa..8939a7d84 100644 --- a/recipes/wip/demos/scamp-cat/recipe.toml +++ b/recipes/wip/demos/scamp-cat/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO outdated ioctl-rs crate error [source] git = "https://github.com/LordAizen1/scamp-cat" shallow_clone = true diff --git a/recipes/wip/demos/solar-system-sim/recipe.toml b/recipes/wip/demos/solar-system-sim/recipe.toml index 0262c4b27..b78778600 100644 --- a/recipes/wip/demos/solar-system-sim/recipe.toml +++ b/recipes/wip/demos/solar-system-sim/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/exor2008/solar-system-sim" shallow_clone = true diff --git a/recipes/wip/demos/stars-sdl/recipe.toml b/recipes/wip/demos/stars-sdl/recipe.toml index 3c090f987..212d53510 100644 --- a/recipes/wip/demos/stars-sdl/recipe.toml +++ b/recipes/wip/demos/stars-sdl/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't find SDL2/_real_SDL_config.h #TODO add a command to install [source] git = "https://github.com/Patater/demokit" @@ -8,7 +8,8 @@ shallow_clone = true template = "custom" dependencies = ["sdl2"] script = """ -rsync -av --delete "${COOKBOOK_SOURCE}/stars" ./ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +cd source/stars DYNAMIC_INIT "${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" """ diff --git a/recipes/wip/demos/terminal-rain/recipe.toml b/recipes/wip/demos/terminal-rain/recipe.toml new file mode 100644 index 000000000..a4e8d662d --- /dev/null +++ b/recipes/wip/demos/terminal-rain/recipe.toml @@ -0,0 +1,7 @@ +#TODO compiled but not tested +[source] +git = "https://github.com/Oakamoore/terminal-rain" +rev = "c46946f5a1ab71dc8b7f826f9ab634d46cb81c71" +shallow_clone = true +[build] +template = "cmake" diff --git a/recipes/wip/demos/topcat/recipe.toml b/recipes/wip/demos/topcat/recipe.toml index b3cf50bb4..35b54d725 100644 --- a/recipes/wip/demos/topcat/recipe.toml +++ b/recipes/wip/demos/topcat/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO use of unstable library feature `int_format_into` [source] git = "https://github.com/tokio-rs/topcoat" shallow_clone = true diff --git a/recipes/wip/demos/vk-examples-rs/recipe.toml b/recipes/wip/demos/vk-examples-rs/recipe.toml index 4be0789b1..a7d3d202d 100644 --- a/recipes/wip/demos/vk-examples-rs/recipe.toml +++ b/recipes/wip/demos/vk-examples-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO rfd crate error [source] git = "https://github.com/adrien-ben/vulkan-examples-rs" shallow_clone = true diff --git a/recipes/wip/demos/voxelspace-sdl/recipe.toml b/recipes/wip/demos/voxelspace-sdl/recipe.toml index 40257900f..931158142 100644 --- a/recipes/wip/demos/voxelspace-sdl/recipe.toml +++ b/recipes/wip/demos/voxelspace-sdl/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested #TODO add manual installation on script [source] git = "https://github.com/gustavopezzi/voxelspace-sdl" diff --git a/recipes/wip/dev/analysis/binwalk/recipe.toml b/recipes/wip/dev/analysis/binwalk/recipe.toml index 62044bed0..10a1a7d50 100644 --- a/recipes/wip/dev/analysis/binwalk/recipe.toml +++ b/recipes/wip/dev/analysis/binwalk/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compilation take too long, temporary crates.io problem? [source] git = "https://github.com/ReFirmLabs/binwalk" shallow_clone = true diff --git a/recipes/wip/dev/analysis/codevis/recipe.toml b/recipes/wip/dev/analysis/codevis/recipe.toml index 9c3cedb12..009bc3539 100644 --- a/recipes/wip/dev/analysis/codevis/recipe.toml +++ b/recipes/wip/dev/analysis/codevis/recipe.toml @@ -1,4 +1,4 @@ -#TODO open crate error (after cargo update) +#TODO very outdated "open" crate (after cargo update) [source] git = "https://github.com/sloganking/codevis" shallow_clone = true diff --git a/recipes/wip/dev/analysis/cppcheck/recipe.toml b/recipes/wip/dev/analysis/cppcheck/recipe.toml new file mode 100644 index 000000000..998c7acd2 --- /dev/null +++ b/recipes/wip/dev/analysis/cppcheck/recipe.toml @@ -0,0 +1,11 @@ +#TODO can't find ucontext.h, 'getloadavg' was not declared in this scope +[source] +git = "https://github.com/cppcheck-opensource/cppcheck" +rev = "2.22.0" +shallow_clone = true +[build] +template = "cmake" +cmakeflags = [ + "-DREGISTER_TESTS=OFF", + "-DREGISTER_GUI_TESTS=OFF", +] \ No newline at end of file diff --git a/recipes/wip/dev/analysis/debtmap/recipe.toml b/recipes/wip/dev/analysis/debtmap/recipe.toml index 82095b2ce..5a58bcd49 100644 --- a/recipes/wip/dev/analysis/debtmap/recipe.toml +++ b/recipes/wip/dev/analysis/debtmap/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO openssl-sys crate error, make it use openssl3 recipe [source] git = "https://github.com/iepathos/debtmap" shallow_clone = true [build] template = "cargo" +dependencies = ["openssl3"] diff --git a/recipes/wip/dev/analysis/feluda/recipe.toml b/recipes/wip/dev/analysis/feluda/recipe.toml index 977c3b46c..f2a91c456 100644 --- a/recipes/wip/dev/analysis/feluda/recipe.toml +++ b/recipes/wip/dev/analysis/feluda/recipe.toml @@ -1,4 +1,4 @@ -#TODO camino crate error +#TODO openssl-sys crate error, make it use openssl3 recipe [source] git = "https://github.com/anistark/feluda" shallow_clone = true diff --git a/recipes/wip/dev/analysis/hgrep/recipe.toml b/recipes/wip/dev/analysis/hgrep/recipe.toml index 6a71dbc64..3ee22242a 100644 --- a/recipes/wip/dev/analysis/hgrep/recipe.toml +++ b/recipes/wip/dev/analysis/hgrep/recipe.toml @@ -1,4 +1,4 @@ -#TODO compilation error, missing mimalloc sys/syscall.h +#TODO compiled but untested [source] git = "https://github.com/rhysd/hgrep" shallow_clone = true diff --git a/recipes/wip/dev/analysis/honggfuzz-rs/recipe.toml b/recipes/wip/dev/analysis/honggfuzz-rs/recipe.toml index 1ebd91a9a..428b19368 100644 --- a/recipes/wip/dev/analysis/honggfuzz-rs/recipe.toml +++ b/recipes/wip/dev/analysis/honggfuzz-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix libunwind dep [source] git = "https://github.com/rust-fuzz/honggfuzz-rs" shallow_clone = true diff --git a/recipes/wip/dev/analysis/hx/recipe.toml b/recipes/wip/dev/analysis/hx/recipe.toml index 15983c0f2..fd9a52934 100644 --- a/recipes/wip/dev/analysis/hx/recipe.toml +++ b/recipes/wip/dev/analysis/hx/recipe.toml @@ -1,7 +1,13 @@ -#TODO missing script for gnu make: https://github.com/krpors/hx#compiling-and-running +#TODO build and test [source] git = "https://github.com/krpors/hx" rev = "v1.0.15" shallow_clone = true [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/dev/analysis/lnav/recipe.toml b/recipes/wip/dev/analysis/lnav/recipe.toml index b83992bd6..6c4d7094d 100644 --- a/recipes/wip/dev/analysis/lnav/recipe.toml +++ b/recipes/wip/dev/analysis/lnav/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO fix libunistring dep # build instructions: https://github.com/tstack/lnav#building-from-source [source] tar = "https://github.com/tstack/lnav/releases/download/v0.14.0/lnav-0.14.0.tar.bz2" diff --git a/recipes/wip/dev/analysis/m-vis/recipe.toml b/recipes/wip/dev/analysis/m-vis/recipe.toml index 40509c836..df550c9c6 100644 --- a/recipes/wip/dev/analysis/m-vis/recipe.toml +++ b/recipes/wip/dev/analysis/m-vis/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't find PlatformMemory value in source [source] git = "https://github.com/SickleFire/m-vis" shallow_clone = true diff --git a/recipes/wip/dev/analysis/pratdiff/recipe.toml b/recipes/wip/dev/analysis/pratdiff/recipe.toml index 90a842d33..5fc63ba74 100644 --- a/recipes/wip/dev/analysis/pratdiff/recipe.toml +++ b/recipes/wip/dev/analysis/pratdiff/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/fowles/pratdiff" shallow_clone = true diff --git a/recipes/wip/dev/analysis/statui/recipe.toml b/recipes/wip/dev/analysis/statui/recipe.toml index 03ff1b084..d0576ad24 100644 --- a/recipes/wip/dev/analysis/statui/recipe.toml +++ b/recipes/wip/dev/analysis/statui/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/Mohamed-Badry/statui" shallow_clone = true diff --git a/recipes/wip/dev/analysis/tinywatcher/recipe.toml b/recipes/wip/dev/analysis/tinywatcher/recipe.toml index 6bbd38fff..2a648e62f 100644 --- a/recipes/wip/dev/analysis/tinywatcher/recipe.toml +++ b/recipes/wip/dev/analysis/tinywatcher/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO port daemon mode [source] git = "https://github.com/tinywatcher/tinywatcher" shallow_clone = true diff --git a/recipes/wip/dev/analysis/zizmor/recipe.toml b/recipes/wip/dev/analysis/zizmor/recipe.toml index b6ef326fb..8f6f0c7dc 100644 --- a/recipes/wip/dev/analysis/zizmor/recipe.toml +++ b/recipes/wip/dev/analysis/zizmor/recipe.toml @@ -1,10 +1,7 @@ -#TODO camino crate error +#TODO tikv-jemalloc-sys crate error: unsupported platform [source] git = "https://github.com/woodruffw/zizmor" shallow_clone = true [build] -template = "custom" -script = """ -DYNAMIC_INIT -cookbook_cargo_packages zizmor -""" +template = "cargo" +cargopackages = ["zizmor"] diff --git a/recipes/wip/dev/build-system/ccache/recipe.toml b/recipes/wip/dev/build-system/ccache/recipe.toml index 74601d948..311d97063 100644 --- a/recipes/wip/dev/build-system/ccache/recipe.toml +++ b/recipes/wip/dev/build-system/ccache/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO disable warnings being treated as errors #TODO missing dependencies: https://github.com/ccache/ccache/blob/master/doc/INSTALL.md#dependencies # build instructions: https://github.com/ccache/ccache/blob/master/doc/INSTALL.md [source] diff --git a/recipes/wip/dev/build-system/just/recipe.toml b/recipes/wip/dev/build-system/just/recipe.toml index b60502904..579846589 100644 --- a/recipes/wip/dev/build-system/just/recipe.toml +++ b/recipes/wip/dev/build-system/just/recipe.toml @@ -2,7 +2,5 @@ [source] git = "https://github.com/casey/just" [build] -template = "custom" -script = """ -cookbook_cargo_packages just -""" +template = "cargo" +cargopackages = ["just"] diff --git a/recipes/wip/dev/build-system/ninja-build/recipe.toml b/recipes/wip/dev/build-system/ninja-build/recipe.toml index d6e10e418..58a735226 100644 --- a/recipes/wip/dev/build-system/ninja-build/recipe.toml +++ b/recipes/wip/dev/build-system/ninja-build/recipe.toml @@ -1,7 +1,8 @@ -#TODO not compiled or tested +#TODO 'getloadavg' was not declared in this scope # build instructions: https://github.com/ninja-build/ninja#building-ninja-itself [source] git = "https://github.com/ninja-build/ninja" rev = "v1.13.1" +shallow_clone = true [build] template = "cmake" diff --git a/recipes/wip/dev/build-system/werk/recipe.toml b/recipes/wip/dev/build-system/werk/recipe.toml index 4635fa1a3..701d2839e 100644 --- a/recipes/wip/dev/build-system/werk/recipe.toml +++ b/recipes/wip/dev/build-system/werk/recipe.toml @@ -1,8 +1,7 @@ #TODO async and rustix crates error [source] git = "https://github.com/simonask/werk" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages werk-cli -""" +template = "cargo" +cargopackages = ["werk-cli"] diff --git a/recipes/wip/dev/debug/dbgflow/recipe.toml b/recipes/wip/dev/debug/dbgflow/recipe.toml index 2ebfe5cb9..db4465c7c 100644 --- a/recipes/wip/dev/debug/dbgflow/recipe.toml +++ b/recipes/wip/dev/debug/dbgflow/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/CbIRNik/dbgflow" shallow_clone = true diff --git a/recipes/wip/dev/debug/dr-memory/recipe.toml b/recipes/wip/dev/debug/dr-memory/recipe.toml index 3175b2c0f..fd25b0e9a 100644 --- a/recipes/wip/dev/debug/dr-memory/recipe.toml +++ b/recipes/wip/dev/debug/dr-memory/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix libunwind dep # lacking build instructions [source] git = "https://github.com/DynamoRIO/drmemory" diff --git a/recipes/wip/dev/other/lurk/recipe.toml b/recipes/wip/dev/debug/lurk/recipe.toml similarity index 66% rename from recipes/wip/dev/other/lurk/recipe.toml rename to recipes/wip/dev/debug/lurk/recipe.toml index a94e58fea..edc1d701a 100644 --- a/recipes/wip/dev/other/lurk/recipe.toml +++ b/recipes/wip/dev/debug/lurk/recipe.toml @@ -1,5 +1,6 @@ -#TODO users crate error +#TODO build error [source] git = "https://github.com/JakWai01/lurk" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/dev/debug/nnd/recipe.toml b/recipes/wip/dev/debug/nnd/recipe.toml index 4542522f3..27092c954 100644 --- a/recipes/wip/dev/debug/nnd/recipe.toml +++ b/recipes/wip/dev/debug/nnd/recipe.toml @@ -1,8 +1,7 @@ #TODO nnd crate error [source] git = "https://github.com/al13n321/nnd" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo --profile=dbgo -""" +template = "cargo" +cargoflags = ["--profile=dbgo"] diff --git a/recipes/wip/dev/debug/openocd/recipe.toml b/recipes/wip/dev/debug/openocd/recipe.toml index e78faa201..81b776da2 100644 --- a/recipes/wip/dev/debug/openocd/recipe.toml +++ b/recipes/wip/dev/debug/openocd/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix jimtcl dep # build instructions: https://github.com/openocd-org/openocd/#building-openocd [source] tar = "https://sourceforge.net/projects/openocd/files/openocd/0.12.0/openocd-0.12.0.tar.bz2/download" diff --git a/recipes/wip/dev/debug/rr-debugger/recipe.toml b/recipes/wip/dev/debug/rr-debugger/recipe.toml index 91729d186..fd9bb4192 100644 --- a/recipes/wip/dev/debug/rr-debugger/recipe.toml +++ b/recipes/wip/dev/debug/rr-debugger/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix capnproto dep # build instructions: https://github.com/rr-debugger/rr/wiki/Building-And-Installing [source] git = "https://github.com/rr-debugger/rr" diff --git a/recipes/wip/dev/debug/strace-tui/recipe.toml b/recipes/wip/dev/debug/strace-tui/recipe.toml index 62e19396b..2e460c7ec 100644 --- a/recipes/wip/dev/debug/strace-tui/recipe.toml +++ b/recipes/wip/dev/debug/strace-tui/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/Rodrigodd/strace-tui" shallow_clone = true diff --git a/recipes/wip/dev/debug/stratoshark/recipe.toml b/recipes/wip/dev/debug/stratoshark/recipe.toml index dd61f4869..4f4569ee2 100644 --- a/recipes/wip/dev/debug/stratoshark/recipe.toml +++ b/recipes/wip/dev/debug/stratoshark/recipe.toml @@ -3,7 +3,7 @@ # build instructions: https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupUNIX.html # build options: https://gitlab.com/wireshark/wireshark/-/blob/master/CMakeOptions.txt [source] -tar = "https://2.na.dl.wireshark.org/src/wireshark-4.6.5.tar.xz" +tar = "https://gitlab.com/wireshark/wireshark/-/archive/v4.7.4/wireshark-v4.7.4.tar.bz2" [build] template = "cmake" cmakeflags = [ diff --git a/recipes/wip/dev/debug/termfu/recipe.toml b/recipes/wip/dev/debug/termfu/recipe.toml index 7d64ce5da..98750c84a 100644 --- a/recipes/wip/dev/debug/termfu/recipe.toml +++ b/recipes/wip/dev/debug/termfu/recipe.toml @@ -1,5 +1,4 @@ -#TODO missing script for gnu make -# build instructions: https://github.com/jvalcher/termfu#installation +#TODO build and test [source] git = "https://github.com/jvalcher/termfu" rev = "v0.2.2" @@ -8,6 +7,12 @@ template = "custom" dependencies = [ "ncursesw", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" [package] dependencies = [ "gdb", diff --git a/recipes/wip/dev/debug/valgrind/recipe.toml b/recipes/wip/dev/debug/valgrind/recipe.toml index 720d81fa8..3e1689de2 100644 --- a/recipes/wip/dev/debug/valgrind/recipe.toml +++ b/recipes/wip/dev/debug/valgrind/recipe.toml @@ -1,4 +1,4 @@ -#TODO port to redox +#TODO port [source] tar = "https://sourceware.org/pub/valgrind/valgrind-3.22.0.tar.bz2" [build] diff --git a/recipes/wip/dev/graphics/bonzomatic/recipe.toml b/recipes/wip/dev/graphics/bonzomatic/recipe.toml index d12b8a2d0..322e0bc83 100644 --- a/recipes/wip/dev/graphics/bonzomatic/recipe.toml +++ b/recipes/wip/dev/graphics/bonzomatic/recipe.toml @@ -3,6 +3,7 @@ # build instructions - https://github.com/Gargaj/Bonzomatic#linux [source] git = "https://github.com/Gargaj/Bonzomatic" +shallow_clone = true [build] template = "cmake" dependencies = [ diff --git a/recipes/wip/dev/graphics/sh4der-jockey/recipe.toml b/recipes/wip/dev/graphics/sh4der-jockey/recipe.toml index d3001c4c5..32e9b736d 100644 --- a/recipes/wip/dev/graphics/sh4der-jockey/recipe.toml +++ b/recipes/wip/dev/graphics/sh4der-jockey/recipe.toml @@ -1,5 +1,6 @@ #TODO winit crate error [source] git = "https://github.com/slerpyyy/sh4der-jockey" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/dev/ide/codelite/recipe.toml b/recipes/wip/dev/ide/codelite/recipe.toml index 85198778c..6af077a9d 100644 --- a/recipes/wip/dev/ide/codelite/recipe.toml +++ b/recipes/wip/dev/ide/codelite/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix wxwidgets-gtk3 dep #TODO discover minimum dependencies from cmake log # build instructions: https://docs.codelite.org/build/build_from_sources/#linux [source] @@ -7,8 +7,8 @@ rev = "18.3.0" shallow_clone = true [build] template = "cmake" -#dependencies = [ +dependencies = [ #"libssh", - #"sqlite3", - #"wxwidgets-gtk3", -#] + "sqlite3", + "wxwidgets-gtk3", +] diff --git a/recipes/wip/dev/ide/evcode/recipe.toml b/recipes/wip/dev/ide/evcode/recipe.toml index a87c72aad..682dea09f 100644 --- a/recipes/wip/dev/ide/evcode/recipe.toml +++ b/recipes/wip/dev/ide/evcode/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/poghdev/Evcode-ide" shallow_clone = true diff --git a/recipes/wip/dev/ide/pragtical/recipe.toml b/recipes/wip/dev/ide/pragtical/recipe.toml index e2f64d482..c043d6178 100644 --- a/recipes/wip/dev/ide/pragtical/recipe.toml +++ b/recipes/wip/dev/ide/pragtical/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO fix sdl3 dep # build instructions: https://pragtical.dev/docs/setup/building [source] git = "https://github.com/pragtical/pragtical" diff --git a/recipes/wip/dev/ide/rust-analyzer/recipe.toml b/recipes/wip/dev/ide/rust-analyzer/recipe.toml index 016bf088d..d240e4f77 100644 --- a/recipes/wip/dev/ide/rust-analyzer/recipe.toml +++ b/recipes/wip/dev/ide/rust-analyzer/recipe.toml @@ -1,9 +1,8 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/rust-lang/rust-analyzer" +rev = "2026-05-25" shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages rust-analyzer -""" +template = "cargo" +cargopackages = ["rust-analyzer"] diff --git a/recipes/wip/dev/lang/blueprint/recipe.toml b/recipes/wip/dev/lang/blueprint/recipe.toml index 747d6a5de..bcad93b04 100644 --- a/recipes/wip/dev/lang/blueprint/recipe.toml +++ b/recipes/wip/dev/lang/blueprint/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] tar = "https://download.gnome.org/sources/blueprint-compiler/0.19/blueprint-compiler-0.19.0.tar.xz" [build] diff --git a/recipes/wip/dev/lang/brimstone/recipe.toml b/recipes/wip/dev/lang/brimstone/recipe.toml index cbee54c1d..0371defa7 100644 --- a/recipes/wip/dev/lang/brimstone/recipe.toml +++ b/recipes/wip/dev/lang/brimstone/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO tikv-jemalloc-sys crate error [source] git = "https://github.com/Hans-Halverson/brimstone" shallow_clone = true [build] template = "cargo" +cargopackages = ["brimstone"] diff --git a/recipes/wip/dev/lang/gcl/recipe.toml b/recipes/wip/dev/lang/gcl/recipe.toml index 7b78f6182..da4531626 100644 --- a/recipes/wip/dev/lang/gcl/recipe.toml +++ b/recipes/wip/dev/lang/gcl/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO disable build tests # build instructions: https://cgit.git.savannah.gnu.org/cgit/gcl.git/tree/gcl/INSTALL [source] tar = "http://ftpmirror.gnu.org/gcl/gcl-2.7.1.tar.gz" diff --git a/recipes/wip/dev/lang/go/recipe.toml b/recipes/wip/dev/lang/go/recipe.toml index 24f3afd65..c2640102f 100644 --- a/recipes/wip/dev/lang/go/recipe.toml +++ b/recipes/wip/dev/lang/go/recipe.toml @@ -1,21 +1,22 @@ #TODO compiling, not tested further [source] git = "https://github.com/willnode/go" -branch = "go-1.25-redox" +branch = "go-1.27-redox" shallow_clone = true [build] template = "custom" script = """ -export PATH=$HOME/go/bin:$PATH +export PATH=$HOME/.local/go/bin:$PATH export GOPATH=${COOKBOOK_BUILD}/gopath if ! command -v go &> /dev/null; then - GO_TARBALL=go1.24.6.linux-$( [ "$(uname -m)" = "aarch64" ] && echo "arm64" || echo "amd64" ).tar.gz + mkdir -p "$HOME/.local" + GO_TARBALL=go1.27.3.linux-$( [ "$(uname -m)" = "aarch64" ] && echo "arm64" || echo "amd64" ).tar.gz GO_DOWNLOAD_URL="https://dl.google.com/go/${GO_TARBALL}" echo "Installing Go..." wget -q --show-progress "${GO_DOWNLOAD_URL}" - tar -C "$HOME" -xzf "${GO_TARBALL}" + tar -C "$HOME/.local" -xzf "${GO_TARBALL}" fi # Go does not support out-of-tree builds :( @@ -31,7 +32,7 @@ case "${TARGET}" in esac export CGO_ENABLED=1 -echo "go1.25.0" > VERSION # to set -trimpath +echo "go1.27.3" > VERSION # to set -trimpath (cd ./src && bash ./make.bash) mkdir -p "${COOKBOOK_STAGE}"/usr/bin \ diff --git a/recipes/wip/dev/lang/goiaba/recipe.toml b/recipes/wip/dev/lang/goiaba/recipe.toml index 234c137cb..e27a98bf0 100644 --- a/recipes/wip/dev/lang/goiaba/recipe.toml +++ b/recipes/wip/dev/lang/goiaba/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/raphamorim/goiaba" shallow_clone = true diff --git a/recipes/wip/dev/lang/janet/recipe.toml b/recipes/wip/dev/lang/janet/recipe.toml new file mode 100644 index 000000000..b42765a33 --- /dev/null +++ b/recipes/wip/dev/lang/janet/recipe.toml @@ -0,0 +1,22 @@ +#TODO compiled but untested +[source] +git = "https://github.com/janet-lang/janet" +rev = "v1.42.1" +shallow_clone = true +[build] +template = "custom" +mesonflags = [ + +] +script = """ +DYNAMIC_INIT +COOKBOOK_MESON_FLAGS+=( + #-Dassembler=false # needed by bytecode compiler? + -Dnet=false + -Dipv6=false + -Dkqueue=false +) +cookbook_meson +mkdir -pv "${COOKBOOK_STAGE}/usr/share/janet" +cp -rv "${COOKBOOK_SOURCE}"/examples/* "${COOKBOOK_STAGE}/usr/share/janet" +""" diff --git a/recipes/wip/dev/lang/julia/recipe.toml b/recipes/wip/dev/lang/julia/recipe.toml index 51b86fafd..388a6f2ad 100644 --- a/recipes/wip/dev/lang/julia/recipe.toml +++ b/recipes/wip/dev/lang/julia/recipe.toml @@ -1,4 +1,4 @@ -#TODO missing script for gnu make: https://github.com/JuliaLang/julia#building-julia +#TODO fix openblas and libunwind deps #TODO missing dependencies: https://github.com/JuliaLang/julia/blob/master/doc/src/devdocs/build/build.md#required-build-tools-and-external-libraries [source] tar = "https://github.com/JuliaLang/julia/releases/download/v1.12.5/julia-1.12.5.tar.gz" @@ -16,3 +16,9 @@ dependencies = [ "openssl3", "libunwind", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/dev/lang/lacc/recipe.toml b/recipes/wip/dev/lang/lacc/recipe.toml index 445575efa..50f647ca4 100644 --- a/recipes/wip/dev/lang/lacc/recipe.toml +++ b/recipes/wip/dev/lang/lacc/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO missing files [source] git = "https://github.com/larmel/lacc" rev = "30839843daaff9d87574b5854854c9ee4610cdcd" +shallow_clone = true [build] template = "configure" diff --git a/recipes/wip/dev/lang/micropython/recipe.toml b/recipes/wip/dev/lang/micropython/recipe.toml index 86a15fd90..13e9748c7 100644 --- a/recipes/wip/dev/lang/micropython/recipe.toml +++ b/recipes/wip/dev/lang/micropython/recipe.toml @@ -1,5 +1,4 @@ #TODO compile and test -# probably wrong gnu make command # build instructions: # https://github.com/micropython/micropython#the-micropython-cross-compiler-mpy-cross # https://github.com/micropython/micropython/blob/master/ports/unix/README.md @@ -18,6 +17,6 @@ make -C ../../mpy-cross # build cross-compiler MAKEFLAGS=( VARIANT=minimal ) -"${COOKBOOK_MAKE}" install -j"$COOKBOOK_MAKE_JOBS" \ -"${MAKEFLAGS[@]}" DESTDIR="$COOKBOOK_STAGE/usr" +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" "${MAKEFLAGS[@]}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" """ diff --git a/recipes/wip/dev/lang/mono/recipe.toml b/recipes/wip/dev/lang/mono/recipe.toml index 9aefc5e6a..bd3f5fb8f 100644 --- a/recipes/wip/dev/lang/mono/recipe.toml +++ b/recipes/wip/dev/lang/mono/recipe.toml @@ -1,5 +1,6 @@ -#TODO can't recognize the redox target +#TODO build and test [source] tar = "https://dl.winehq.org/mono/sources/mono/mono-6.14.1.tar.xz" +script = "GNU_CONFIG_GET config.sub" [build] template = "configure" diff --git a/recipes/wip/dev/lang/r/recipe.toml b/recipes/wip/dev/lang/r/recipe.toml index c1b0b8dbd..9737aa210 100644 --- a/recipes/wip/dev/lang/r/recipe.toml +++ b/recipes/wip/dev/lang/r/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO enable gcc fortran frontend # build instructions: https://cran.r-project.org/doc/manuals/r-release/R-admin.html#Installing-R-under-Unix_002dalikes [source] tar = "https://cloud.r-project.org/src/base/R-4/R-4.5.3.tar.gz" diff --git a/recipes/wip/dev/lang/rhai/recipe.toml b/recipes/wip/dev/lang/rhai/recipe.toml new file mode 100644 index 000000000..2f0ff5582 --- /dev/null +++ b/recipes/wip/dev/lang/rhai/recipe.toml @@ -0,0 +1,14 @@ +#TODO compiled but untested +[source] +git = "https://github.com/rhaiscript/rhai" +shallow_clone = true +[build] +template = "custom" +script = """ +DYNAMIC_INIT +cookbook_cargo +COOKBOOK_CARGO_FLAGS=() +cookbook_cargo_examples hello +mkdir -pv "${COOKBOOK_STAGE}/usr/share/rhai" +cp -rv "${COOKBOOK_SOURCE}"/scripts/* "${COOKBOOK_STAGE}/usr/share/rhai" +""" diff --git a/recipes/wip/dev/lang/rilua/recipe.toml b/recipes/wip/dev/lang/rilua/recipe.toml index 7695aadf7..b780502b6 100644 --- a/recipes/wip/dev/lang/rilua/recipe.toml +++ b/recipes/wip/dev/lang/rilua/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO can't find stdin, stdout and stderr values [source] git = "https://github.com/wowemulation-dev/rilua" shallow_clone = true diff --git a/recipes/wip/dev/lang/ruby/recipe.toml b/recipes/wip/dev/lang/ruby/recipe.toml index dab053048..4107090fc 100644 --- a/recipes/wip/dev/lang/ruby/recipe.toml +++ b/recipes/wip/dev/lang/ruby/recipe.toml @@ -1,4 +1,4 @@ -#TODO compilation error +#TODO invalid application of 'sizeof' to incomplete type 'struct crypt_data' [source] tar = "https://cache.ruby-lang.org/pub/ruby/3.4/ruby-3.4.8.tar.gz" [build] diff --git a/recipes/wip/dev/lang/scc/recipe.toml b/recipes/wip/dev/lang/scc/recipe.toml index 9e681b4e4..7fb6ddf3a 100644 --- a/recipes/wip/dev/lang/scc/recipe.toml +++ b/recipes/wip/dev/lang/scc/recipe.toml @@ -1,9 +1,20 @@ -#TODO missing script for gnu make +#TODO build and test +#TODO add command for installation # build instructions: https://git.simple-cc.org/scc/file/README.html [source] git = "https://git.simple-cc.org/scc/" rev = "1ed0ff0000999561feee336c289252faf2502a7e" +shallow_clone = true [build] template = "custom" [package] dependencies = ["qbe"] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +MAKEFLAGS=( + CONF=$(gcc -dumpmachine) + CROSS_COMPILE=$TARGET +) +"${COOKBOOK_MAKE}" config -j "${COOKBOOK_MAKE_JOBS}" "${MAKEFLAGS[@]}" +""" diff --git a/recipes/wip/dev/lang/tcc/recipe.toml b/recipes/wip/dev/lang/tcc/recipe.toml index 76ca73072..f0faa7507 100644 --- a/recipes/wip/dev/lang/tcc/recipe.toml +++ b/recipes/wip/dev/lang/tcc/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO add cross-compilation flags # build instructions: https://repo.or.cz/tinycc.git/blob/HEAD:/README [source] tar = "https://download.savannah.nongnu.org/releases/tinycc/tcc-0.9.27.tar.bz2" diff --git a/recipes/wip/dev/lang/tsuki/recipe.toml b/recipes/wip/dev/lang/tsuki/recipe.toml index 6bc68d737..0a2c55cec 100644 --- a/recipes/wip/dev/lang/tsuki/recipe.toml +++ b/recipes/wip/dev/lang/tsuki/recipe.toml @@ -4,3 +4,4 @@ git = "https://github.com/ultimaweapon/tsuki" shallow_clone = true [build] template = "cargo" +cargoflags = ["--bench lua"] diff --git a/recipes/wip/dev/lang/tur/recipe.toml b/recipes/wip/dev/lang/tur/recipe.toml index 9371088e6..21d54ffcd 100644 --- a/recipes/wip/dev/lang/tur/recipe.toml +++ b/recipes/wip/dev/lang/tur/recipe.toml @@ -1,10 +1,10 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/rezigned/tur" shallow_clone = true [build] -template = "custom" -script = """ -DYNAMIC_INIT -cookbook_cargo_packages tur-cli tur-tui -""" +template = "cargo" +cargopackages = [ + "tur-cli", + "tur-tui", +] diff --git a/recipes/wip/dev/lang/vala/recipe.toml b/recipes/wip/dev/lang/vala/recipe.toml index e4201edd1..38d7f064d 100644 --- a/recipes/wip/dev/lang/vala/recipe.toml +++ b/recipes/wip/dev/lang/vala/recipe.toml @@ -1,14 +1,10 @@ -#TODO not compiled or tested +#TODO Unable to retrieve girdir from gobject-introspection-1.0.pc #TODO require bootstraping from another vala compiler # build instructions: https://gitlab.gnome.org/GNOME/vala#building-vala [source] tar = "https://download.gnome.org/sources/vala/0.56/vala-0.56.18.tar.xz" [build] -template = "custom" +template = "configure" dependencies = [ "glib", ] -script = """ -DYNAMIC_INIT -cookbook_configure -""" diff --git a/recipes/wip/dev/lang/yasm/recipe.toml b/recipes/wip/dev/lang/yasm/recipe.toml index 7d8f1e8a7..4143b4bb6 100644 --- a/recipes/wip/dev/lang/yasm/recipe.toml +++ b/recipes/wip/dev/lang/yasm/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] tar = "https://github.com/yasm/yasm/releases/download/v1.3.0/yasm-1.3.0.tar.gz" +script = "GNU_CONFIG_GET config/config.sub" [build] template = "configure" diff --git a/recipes/wip/dev/patchers/hexpatch/recipe.toml b/recipes/wip/dev/patchers/hexpatch/recipe.toml index 5c3086689..14fdefd15 100644 --- a/recipes/wip/dev/patchers/hexpatch/recipe.toml +++ b/recipes/wip/dev/patchers/hexpatch/recipe.toml @@ -1,5 +1,6 @@ #TODO mlua-sys crate error [source] git = "https://github.com/Etto48/HexPatch" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/dev/perf/flamelens/recipe.toml b/recipes/wip/dev/perf/flamelens/recipe.toml index be939a750..09bdcc9c6 100644 --- a/recipes/wip/dev/perf/flamelens/recipe.toml +++ b/recipes/wip/dev/perf/flamelens/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/YS-L/flamelens" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/dev/perf/inferno/recipe.toml b/recipes/wip/dev/perf/inferno/recipe.toml index cf8155a4e..ab6842992 100644 --- a/recipes/wip/dev/perf/inferno/recipe.toml +++ b/recipes/wip/dev/perf/inferno/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/jonhoo/inferno" shallow_clone = true diff --git a/recipes/wip/dev/perf/redox-kprofiling/recipe.toml b/recipes/wip/dev/perf/redox-kprofiling/recipe.toml index d8487559e..b803c1b3f 100644 --- a/recipes/wip/dev/perf/redox-kprofiling/recipe.toml +++ b/recipes/wip/dev/perf/redox-kprofiling/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://gitlab.redox-os.org/redox-os/kprofiling" shallow_clone = true diff --git a/recipes/wip/dev/perf/samply/recipe.toml b/recipes/wip/dev/perf/samply/recipe.toml index cbef16b25..23582b7fc 100644 --- a/recipes/wip/dev/perf/samply/recipe.toml +++ b/recipes/wip/dev/perf/samply/recipe.toml @@ -1,8 +1,7 @@ -#TODO not compiled or tested +#TODO very outdated fs4 crate [source] git = "https://github.com/mstange/samply" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages samply -""" +template = "cargo" +cargopackages = ["samply"] diff --git a/recipes/wip/dev/perf/tracy/recipe.toml b/recipes/wip/dev/perf/tracy/recipe.toml index 292a29a96..c8eead93f 100644 --- a/recipes/wip/dev/perf/tracy/recipe.toml +++ b/recipes/wip/dev/perf/tracy/recipe.toml @@ -1,7 +1,8 @@ -#TODO missing script for gnu make: https://github.com/wolfpld/tracy/releases/latest/download/tracy.pdf +#TODO build and test [source] git = "https://github.com/wolfpld/tracy" rev = "v0.13.0" +shallow_clone = true [build] template = "custom" dependencies = [ @@ -10,3 +11,15 @@ dependencies = [ "dbus", "capstone", ] +script = """ +DYNAMIC_INIT +#cd "${COOKBOOK_SOURCE}/capture" +#cookbook_cmake # build once the profiler works +cd "${COOKBOOK_SOURCE}/profiler" +COOKBOOK_CMAKE_FLAGS+=( + -DNO_FILESELECTOR=ON + -DLEGACY=ON + -DSELF_PROFILE=ON +) +cookbook_cmake +""" diff --git a/recipes/wip/dev/perf/vkpeak/recipe.toml b/recipes/wip/dev/perf/vkpeak/recipe.toml index 648645555..fd287dfbe 100644 --- a/recipes/wip/dev/perf/vkpeak/recipe.toml +++ b/recipes/wip/dev/perf/vkpeak/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix libvulkan dep # build instructions: https://github.com/nihui/vkpeak#build-from-source [source] git = "https://github.com/nihui/vkpeak" diff --git a/recipes/wip/dev/proofs/cvc5/recipe.toml b/recipes/wip/dev/proofs/cvc5/recipe.toml index c806232af..cbed6289d 100644 --- a/recipes/wip/dev/proofs/cvc5/recipe.toml +++ b/recipes/wip/dev/proofs/cvc5/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO GMP-EP-stamp bundled dep can't find cross-compiler #TODO run configure.sh or cmake directly? # build instructions: https://github.com/cvc5/cvc5/blob/main/INSTALL.rst [source] @@ -8,6 +8,7 @@ shallow_clone = true [build] template = "cmake" cmakeflags = [ + "-DCMAKE_BUILD_TYPE=Production", "-DENABLE_AUTO_DOWNLOAD=ON", ] dependencies = [ diff --git a/recipes/wip/dev/proofs/z3/recipe.toml b/recipes/wip/dev/proofs/z3/recipe.toml index cf5a57613..5585aa409 100644 --- a/recipes/wip/dev/proofs/z3/recipe.toml +++ b/recipes/wip/dev/proofs/z3/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO inconsistent types 'unsigned int' and 'long int' deduced for lambda return type # build instructions: https://github.com/Z3Prover/z3/blob/master/README-CMake.md [source] git = "https://github.com/Z3Prover/z3" diff --git a/recipes/wip/dev/rust-tools/clippy/recipe.toml b/recipes/wip/dev/rust-tools/clippy/recipe.toml deleted file mode 100644 index fbd5cd626..000000000 --- a/recipes/wip/dev/rust-tools/clippy/recipe.toml +++ /dev/null @@ -1,6 +0,0 @@ -#TODO camino crate error -[source] -git = "https://github.com/rust-lang/rust-clippy" -shallow_clone = true -[build] -template = "cargo" diff --git a/recipes/wip/dev/rust-tools/crater/recipe.toml b/recipes/wip/dev/rust-tools/crater/recipe.toml index ffa50737c..a859f0e51 100644 --- a/recipes/wip/dev/rust-tools/crater/recipe.toml +++ b/recipes/wip/dev/rust-tools/crater/recipe.toml @@ -1,4 +1,4 @@ -#TODO camino crate error +#TODO fs_at crate error: add a redox cfg to avoid openat64 linux syscall being used [source] git = "https://github.com/rust-lang/crater" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/diplomat/recipe.toml b/recipes/wip/dev/rust-tools/diplomat/recipe.toml index d40549065..e9168869c 100644 --- a/recipes/wip/dev/rust-tools/diplomat/recipe.toml +++ b/recipes/wip/dev/rust-tools/diplomat/recipe.toml @@ -3,5 +3,8 @@ git = "https://github.com/rust-diplomat/diplomat" shallow_clone = true [build] -template = "cargo" -cargopackages = ["diplomat"] +template = "custom" +script = """ +DYNAMIC_INIT +cookbook_cargo_packages diplomat +""" diff --git a/recipes/wip/dev/rust-tools/dylint/recipe.toml b/recipes/wip/dev/rust-tools/dylint/recipe.toml index f99ead2e9..50e967d72 100644 --- a/recipes/wip/dev/rust-tools/dylint/recipe.toml +++ b/recipes/wip/dev/rust-tools/dylint/recipe.toml @@ -1,4 +1,4 @@ -#TODO cargo-util crate error +#TODO compiled but untested [source] git = "https://github.com/trailofbits/dylint" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/evcxr-jupyter/recipe.toml b/recipes/wip/dev/rust-tools/evcxr-jupyter/recipe.toml index 5192bb287..97ea7defd 100644 --- a/recipes/wip/dev/rust-tools/evcxr-jupyter/recipe.toml +++ b/recipes/wip/dev/rust-tools/evcxr-jupyter/recipe.toml @@ -1,4 +1,4 @@ -#TODO camino crate error +#TODO sig crate error: cannot find value `SIGPOLL` in crate `libc` [source] git = "https://github.com/evcxr/evcxr" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/evcxr-repl/recipe.toml b/recipes/wip/dev/rust-tools/evcxr-repl/recipe.toml index ed246c3ff..372ed570f 100644 --- a/recipes/wip/dev/rust-tools/evcxr-repl/recipe.toml +++ b/recipes/wip/dev/rust-tools/evcxr-repl/recipe.toml @@ -1,4 +1,4 @@ -#TODO camino crate error +#TODO sig crate error: cannot find value `SIGPOLL` in crate `libc` [source] git = "https://github.com/evcxr/evcxr" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/miri/recipe.toml b/recipes/wip/dev/rust-tools/miri/recipe.toml deleted file mode 100644 index db20e0cae..000000000 --- a/recipes/wip/dev/rust-tools/miri/recipe.toml +++ /dev/null @@ -1,6 +0,0 @@ -#TODO not compiled or tested -[source] -git = "https://github.com/rust-lang/miri" -shallow_clone = true -[build] -template = "cargo" diff --git a/recipes/wip/dev/rust-tools/rust-glancer/recipe.toml b/recipes/wip/dev/rust-tools/rust-glancer/recipe.toml index fba594e8e..167d22e3c 100644 --- a/recipes/wip/dev/rust-tools/rust-glancer/recipe.toml +++ b/recipes/wip/dev/rust-tools/rust-glancer/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO outdated crates [source] git = "https://github.com/rust-glancer/rust-glancer" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/rustfmt/recipe.toml b/recipes/wip/dev/rust-tools/rustfmt/recipe.toml deleted file mode 100644 index 12d739b3c..000000000 --- a/recipes/wip/dev/rust-tools/rustfmt/recipe.toml +++ /dev/null @@ -1,6 +0,0 @@ -#TODO serde crate error (after cargo update) -[source] -git = "https://github.com/rust-lang/rustfmt" -shallow_clone = true -[build] -template = "cargo" diff --git a/recipes/wip/dev/rust-tools/rustup/recipe.toml b/recipes/wip/dev/rust-tools/rustup/recipe.toml index a21ea7eb1..6c15d4789 100644 --- a/recipes/wip/dev/rust-tools/rustup/recipe.toml +++ b/recipes/wip/dev/rust-tools/rustup/recipe.toml @@ -1,4 +1,4 @@ -#TODO serde crate error +#TODO fs_at crate error: add a redox cfg to avoid openat64 linux syscall being used [source] git = "https://github.com/rust-lang/rustup" shallow_clone = true diff --git a/recipes/wip/dev/rust-tools/sccache/recipe.toml b/recipes/wip/dev/rust-tools/sccache/recipe.toml index 039aff7e6..9cd4b7842 100644 --- a/recipes/wip/dev/rust-tools/sccache/recipe.toml +++ b/recipes/wip/dev/rust-tools/sccache/recipe.toml @@ -1,9 +1,8 @@ -#TODO libc error +#TODO compiled but untested [source] git = "https://github.com/mozilla/sccache" shallow_clone = true [build] template = "cargo" -dependencies = [ - "openssl3", -] +cargoflags = ["--no-default-features"] +#dependencies = ["openssl3"] # do we need a feature flag that need it? diff --git a/recipes/wip/dev/rust-tools/scriptisto/recipe.toml b/recipes/wip/dev/rust-tools/scriptisto/recipe.toml index 202dbcf78..ef098c923 100644 --- a/recipes/wip/dev/rust-tools/scriptisto/recipe.toml +++ b/recipes/wip/dev/rust-tools/scriptisto/recipe.toml @@ -1,6 +1,10 @@ -#TODO users crate error +#TODO compiled but not tested [source] git = "https://github.com/igor-petruk/scriptisto" +rev = "511875fe6" shallow_clone = true +patches = [ + "redox.patch" +] [build] template = "cargo" diff --git a/recipes/wip/dev/rust-tools/scriptisto/redox.patch b/recipes/wip/dev/rust-tools/scriptisto/redox.patch new file mode 100644 index 000000000..6b17cc84e --- /dev/null +++ b/recipes/wip/dev/rust-tools/scriptisto/redox.patch @@ -0,0 +1,66 @@ +diff --git a/Cargo.lock b/Cargo.lock +index c414c6b..08c7dd0 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -37,12 +37,6 @@ version = "2.5.0" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" + +-[[package]] +-name = "cc" +-version = "1.0.99" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +- + [[package]] + name = "cfg-if" + version = "1.0.0" +@@ -184,30 +178,18 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + + [[package]] + name = "errno" +-version = "0.2.8" ++version = "0.3.14" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" ++checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" + dependencies = [ +- "errno-dragonfly", +- "libc", +- "winapi", +-] +- +-[[package]] +-name = "errno-dragonfly" +-version = "0.1.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +-dependencies = [ +- "cc", + "libc", ++ "windows-sys 0.52.0", + ] + + [[package]] + name = "exec" + version = "0.3.1" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "886b70328cba8871bfc025858e1de4be16b1d5088f2ba50b57816f4210672615" ++source = "git+https://github.com/alexanderkjall/exec-rs?branch=upgrade-errno-to-0.3#8e4a7edb00b2d0aed0100c1803bc4afd3e79d5c3" + dependencies = [ + "errno", + "libc", +diff --git a/Cargo.toml b/Cargo.toml +index a9c208a..0d8f354 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -53,6 +53,9 @@ clap = { version = "3", features = ["derive"] } + default-features = false + version = '0' + ++[patch.crates-io] ++exec = { git = "https://github.com/alexanderkjall/exec-rs", branch = "upgrade-errno-to-0.3" } ++ + [package.metadata.deb] + section = "utils" + assets = [ diff --git a/recipes/wip/doc/pandoc/recipe.toml b/recipes/wip/doc/pandoc/recipe.toml new file mode 100644 index 000000000..f0ee2b561 --- /dev/null +++ b/recipes/wip/doc/pandoc/recipe.toml @@ -0,0 +1,5 @@ +#TODO add a script for stack build system: https://pandoc.org/installing.html#compiling-from-source +[source] +tar = "https://hackage.haskell.org/package/pandoc-3.12/pandoc-3.12.tar.gz" +[build] +template = "custom" diff --git a/recipes/wip/edu/bibiman/recipe.toml b/recipes/wip/edu/bibiman/recipe.toml index 29cbe8f55..c9cf7c046 100644 --- a/recipes/wip/edu/bibiman/recipe.toml +++ b/recipes/wip/edu/bibiman/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://codeberg.org/lukeflo/bibiman" [build] diff --git a/recipes/wip/edu/hacker-laws/recipe.toml b/recipes/wip/edu/hacker-laws/recipe.toml index 1d9fbcbb2..3feae08b9 100644 --- a/recipes/wip/edu/hacker-laws/recipe.toml +++ b/recipes/wip/edu/hacker-laws/recipe.toml @@ -1,6 +1,7 @@ #TODO not tested [source] git = "https://github.com/dwmkerr/hacker-laws" +shallow_clone = true [build] template = "custom" script = """ diff --git a/recipes/wip/edu/nanocore/recipe.toml b/recipes/wip/edu/nanocore/recipe.toml index f0d9ad828..8f2008883 100644 --- a/recipes/wip/edu/nanocore/recipe.toml +++ b/recipes/wip/edu/nanocore/recipe.toml @@ -1,9 +1,11 @@ #TODO not compiled or tested [source] git = "https://github.com/AfaanBilal/NanoCore" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT cookbook_cargo mkdir -pv "${COOKBOOK_STAGE}/usr/share/nanocore" cp -rv "${COOKBOOK_SOURCE}"/programs/* "${COOKBOOK_STAGE}/usr/share/nanocore" diff --git a/recipes/wip/edu/rustlings/recipe.toml b/recipes/wip/edu/rustlings/recipe.toml index 0d335328f..582acdb8f 100644 --- a/recipes/wip/edu/rustlings/recipe.toml +++ b/recipes/wip/edu/rustlings/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested (after cargo update) [source] git = "https://github.com/rust-lang/rustlings" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/edu/rusty-tape/recipe.toml b/recipes/wip/edu/rusty-tape/recipe.toml index f6c71a5ab..b1776aa7d 100644 --- a/recipes/wip/edu/rusty-tape/recipe.toml +++ b/recipes/wip/edu/rusty-tape/recipe.toml @@ -1,10 +1,12 @@ #TODO compiled but not tested [source] git = "https://github.com/Kkobarii/Rusty-Tape" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT +cookbook_cargo mkdir -pv "${COOKBOOK_STAGE}"/usr/share/rusty-tape cp -rv "${COOKBOOK_SOURCE}"/data/* "${COOKBOOK_STAGE}"/usr/share/rusty-tape -cookbook_cargo """ diff --git a/recipes/wip/emu/game-console/gecko/recipe.toml b/recipes/wip/emu/game-console/gecko/recipe.toml index 5a3b6df9f..efd11818a 100644 --- a/recipes/wip/emu/game-console/gecko/recipe.toml +++ b/recipes/wip/emu/game-console/gecko/recipe.toml @@ -1,7 +1,9 @@ -#TODO compile and test +#TODO disasm crate error +#TODO make sdl3-sys crate use sdl3 recipe [source] git = "https://github.com/ioncodes/gecko" shallow_clone = true [build] template = "cargo" cargopackages = ["tinyapp"] +dependencies = ["sdl3"] diff --git a/recipes/wip/emu/game-console/mame/recipe.toml b/recipes/wip/emu/game-console/mame/recipe.toml index 5428ced96..9f1ba777c 100644 --- a/recipes/wip/emu/game-console/mame/recipe.toml +++ b/recipes/wip/emu/game-console/mame/recipe.toml @@ -1,14 +1,27 @@ -#TODO missing script for gnu make: https://docs.mamedev.org/initialsetup/compilingmame.html +#TODO compile and test +# cross-compilation doc: https://docs.mamedev.org/initialsetup/compilingmame.html#cross-compiling-mame [source] git = "https://github.com/mamedev/mame" rev = "mame0282" shallow_clone = true [build] template = "custom" -dependencies = [ - "sdl2", - "sdl2-ttf", - "fontconfig", - "qt5-base", - "qt5-tools", -] +#dependencies = [ +# "sdl2", +# "sdl2-ttf", +# "fontconfig", +# "qt5-base", +# "qt5-tools", +#] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +MAKEFLAGS=( + CROSS_BUILD=1 + NO_OPENGL=1 + NO_USE_PORTAUDIO=1 + NO_USE_PULSEAUDIO=1 +) +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" "${MAKEFLAGS[@]}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/emu/game-console/ps1/swanstation/recipe.toml b/recipes/wip/emu/game-console/ps1/swanstation/recipe.toml index e6276279e..81412753c 100644 --- a/recipes/wip/emu/game-console/ps1/swanstation/recipe.toml +++ b/recipes/wip/emu/game-console/ps1/swanstation/recipe.toml @@ -1,6 +1,5 @@ # using DuckStation fork from when it was licensed as GPLv3 and the fork still had the Qt and ImGui? frontends (libretro fork don't have them anymore) -#TODO not compiled or tested yet -#TODO determine minimum dependencies from cmake log +#TODO can't fetch submodules # build instructions: https://github.com/piepacker/swanstation#linux-1 [source] git = "https://github.com/piepacker/swanstation" @@ -15,9 +14,10 @@ cmakeflags = [ "-DBUILD_QT_FRONTEND=OFF", "-DBUILD_MINI_FRONTEND=ON", ] -#dependencies = [ - #"sdl2", +dependencies = [ + "sdl2", + "curl", #"qt6-base", #"qt6-svg", #"qt6-tools", -#] +] diff --git a/recipes/wip/emu/game-console/ps1/trapezoid/recipe.toml b/recipes/wip/emu/game-console/ps1/trapezoid/recipe.toml index 55253803e..8a89a76c9 100644 --- a/recipes/wip/emu/game-console/ps1/trapezoid/recipe.toml +++ b/recipes/wip/emu/game-console/ps1/trapezoid/recipe.toml @@ -1,4 +1,4 @@ -#TODO sccache error +#TODO sccache server shutdown error causes rust abort because can't catch foreign exceptions [source] git = "https://github.com/Amjad50/Trapezoid" shallow_clone = true diff --git a/recipes/wip/emu/pc/lightspark/recipe.toml b/recipes/wip/emu/pc/lightspark/recipe.toml index 6abf5672a..f8e11ee66 100644 --- a/recipes/wip/emu/pc/lightspark/recipe.toml +++ b/recipes/wip/emu/pc/lightspark/recipe.toml @@ -1,7 +1,7 @@ -#TODO compile and test +#TODO build error [source] git = "https://github.com/lightspark/lightspark" -rev = "ff478b8a6a349a6d919e342d04793dad454fdf5c" +rev = "0.10.0" shallow_clone = true [build] template = "cmake" @@ -12,14 +12,16 @@ cmakeflags = [ "-DENABLE_LIBAVCODEC=FALSE", "-DENABLE_RTMP=FALSE", ] -#dependencies = [ - #"mesa", - #"curl", - #"zlib", +dependencies = [ + "mesa", + "curl", + "zlib", #"ffmpeg6", #"rtmpdump", - #"sdl2", - #"libjpeg", - #"xz", - #"fontconfig", -#] + "sdl2", + "libjpeg", + "libpng", + "freetype2", + "xz", + "fontconfig", +] diff --git a/recipes/wip/fonts/noto/recipe.toml b/recipes/wip/fonts/noto/recipe.toml index c33429709..7de97f65b 100644 --- a/recipes/wip/fonts/noto/recipe.toml +++ b/recipes/wip/fonts/noto/recipe.toml @@ -7,6 +7,7 @@ template = "custom" script = """ mkdir -pv "${COOKBOOK_STAGE}"/usr/share/fonts/Noto for f in "${COOKBOOK_SOURCE}"/fonts/*; do -echo cp -rv "${f}/full/ttf/* "${COOKBOOK_STAGE}/usr/share/fonts/Noto/$(basename ${f})/" +mkdir "${COOKBOOK_STAGE}/usr/share/fonts/Noto/$(basename ${f})/" +cp -rv "${f}/googlefonts/ttf"/* "${COOKBOOK_STAGE}/usr/share/fonts/Noto/$(basename ${f})/" || true done """ diff --git a/recipes/wip/games/data/openjazz-shareware-data/manifest b/recipes/wip/games/data/openjazz-shareware-data/manifest index 8d1f2f327..ec8af011a 100644 --- a/recipes/wip/games/data/openjazz-shareware-data/manifest +++ b/recipes/wip/games/data/openjazz-shareware-data/manifest @@ -1,4 +1,4 @@ name=Jazz Jackrabbit (shareware) category=Games binary=/usr/games/OpenJazz -icon=/usr/share/ui/icons/apps/OpenJazz.png +icon=/usr/share/icons/apps/OpenJazz.png diff --git a/recipes/wip/games/engines/ioquake3/recipe.toml b/recipes/wip/games/engines/ioquake3/recipe.toml index 8872ae5ea..6370f3b41 100644 --- a/recipes/wip/games/engines/ioquake3/recipe.toml +++ b/recipes/wip/games/engines/ioquake3/recipe.toml @@ -1,8 +1,14 @@ #TODO missing script for "make", see https://github.com/ioquake/ioq3#compilation-and-installation [source] git = "https://github.com/ioquake/ioq3" +rev = "83a7762" +shallow_clone = true [build] -template = "custom" -dependencies = [ - "sdl2", +template = "cmake" +cmakeflags = [ + "-DBUILD_SERVER=OFF", + "-DUSE_VOIP=OFF", + "-DUSE_MUMBLE=OFF", + "-DUSE_INTERNAL_LIBS=OFF", ] +dependencies = ["sdl2"] diff --git a/recipes/wip/games/fps/acr/recipe.toml b/recipes/wip/games/fps/acr/recipe.toml new file mode 100644 index 000000000..ccd4ec1dc --- /dev/null +++ b/recipes/wip/games/fps/acr/recipe.toml @@ -0,0 +1,22 @@ +#TODO build and test +[source] +git = "https://github.com/acreloaded/acr" +rev = "v2.18.3" +shallow_clone = true +[build] +template = "custom" +dependencies = [ + "sdl1", + "sdl1-image", + "openal", + "libogg", + "zlib", + "curl", + "libvorbis", +] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/source/src" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" client -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" client_install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/games/fps/assaultcube/recipe.toml b/recipes/wip/games/fps/assaultcube/recipe.toml deleted file mode 100644 index 1d3ecbc04..000000000 --- a/recipes/wip/games/fps/assaultcube/recipe.toml +++ /dev/null @@ -1,16 +0,0 @@ -#TODO missing script for gnu make -# build instructions: https://wiki.cubers.net/action/view/Linux_Support#Compiling_AssaultCube -[source] -git = "https://github.com/assaultcube/AC" -rev = "v1.3.0.2" -[build] -template = "configure" -dependencies = [ - "sdl1", - "sdl1-image", - "openal", - "libogg", - "zlib", - "curl", - "libvorbis", -] diff --git a/recipes/wip/games/fps/betterspades/recipe.toml b/recipes/wip/games/fps/betterspades/recipe.toml index d7ed6d1c0..fb3a40438 100644 --- a/recipes/wip/games/fps/betterspades/recipe.toml +++ b/recipes/wip/games/fps/betterspades/recipe.toml @@ -3,6 +3,8 @@ # build instructions: https://github.com/xtreme8000/BetterSpades#linux [source] git = "https://github.com/xtreme8000/BetterSpades" +rev = "v0.1.5" +shallow_clone = true [build] template = "cmake" dependencies = [ diff --git a/recipes/wip/games/fps/et-legacy/recipe.toml b/recipes/wip/games/fps/et-legacy/recipe.toml index ba6cd301a..49339943c 100644 --- a/recipes/wip/games/fps/et-legacy/recipe.toml +++ b/recipes/wip/games/fps/et-legacy/recipe.toml @@ -6,6 +6,11 @@ rev = "v2.83.2" shallow_clone = true [build] template = "cmake" +cmakeflags = [ + "-DBUILD_SERVER=OFF", + "-DBUILD_MOD=OFF", + "-DBUNDLED_LIBS=OFF", +] dependencies = [ "sdl2", "openssl3", diff --git a/recipes/wip/games/fps/openarena/recipe.toml b/recipes/wip/games/fps/openarena/recipe.toml index c1f423638..cb95dea34 100644 --- a/recipes/wip/games/fps/openarena/recipe.toml +++ b/recipes/wip/games/fps/openarena/recipe.toml @@ -1,4 +1,4 @@ -#TODO missing script for building, lacking build instructions +#TODO build and test #TODO what is game code? - http://files.poulsander.com/~poul19/public_files/oa/dev088/oa-0.8.8.tar.bz2 [source] tar = "http://files.poulsander.com/~poul19/public_files/oa/dev088/openarena-engine-source-0.8.8.tar.bz2" @@ -10,3 +10,9 @@ dependencies = [ "libvorbis", "mesa", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/games/fps/openspades-free/recipe.toml b/recipes/wip/games/fps/openspades-free/recipe.toml deleted file mode 100644 index ea7476f6a..000000000 --- a/recipes/wip/games/fps/openspades-free/recipe.toml +++ /dev/null @@ -1,31 +0,0 @@ -#TODO not compiled or tested -# build instructions: https://github.com/yvt/openspades#on-unixes-from-source -[source] -git = "https://github.com/yvt/openspades" -shallow_clone = true -[build] -template = "custom" -dependencies = [ - "glew", - "openssl3", - "sdl2", - "sdl2-image", - "freealut", - "freetype2", - # "opus", - "opusfile", - "libjpeg", - "openal", - "curl", - "libxinerama", - "libxft", -] -script = """ -DYNAMIC_INIT -COOKBOOK_CMAKE_FLAGS+=( - -DOPENSPADES_NONFREE_RESOURCES=OFF -) -cookbook_cmake -wget https://github.com/DeathByDenim/openspades-free-pak/releases/download/latest/pak001-Free.pak \ -"${COOKBOOK_STAGE}"/usr/share/openspades/Resources -""" diff --git a/recipes/wip/games/fps/smokin-guns/recipe.toml b/recipes/wip/games/fps/smokin-guns/recipe.toml index 1ffe7447c..6239a1a74 100644 --- a/recipes/wip/games/fps/smokin-guns/recipe.toml +++ b/recipes/wip/games/fps/smokin-guns/recipe.toml @@ -1,7 +1,15 @@ -#TODO missing script for "make", see https://trac.smokin-guns.org/wiki/SmokinGuns/Building/linux -#TODO bundled with the ioquake3 engine? +#TODO build and test +# bundled with the ioquake3 engine? #TODO determine dependencies [source] git = "https://github.com/smokin-guns/SmokinGuns" +rev = "v1.1" +shallow_clone = true [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/games/fps/xonotic/recipe.toml b/recipes/wip/games/fps/xonotic/recipe.toml index ee3584953..4f2ebf401 100644 --- a/recipes/wip/games/fps/xonotic/recipe.toml +++ b/recipes/wip/games/fps/xonotic/recipe.toml @@ -1,7 +1,7 @@ -#TODO missing script for "make", see https://gitlab.com/xonotic/xonotic/-/wikis/Compiling +#TODO build and test +# build instructions: https://gitlab.com/xonotic/xonotic/-/wikis/Compiling [source] -git = "https://gitlab.com/xonotic/xonotic" -rev = "0100f2c8d7947267292db66714c1af55039809ad" +tar = "https://gitlab.com/xonotic/xonotic/-/archive/xonotic-v0.8.6/xonotic-xonotic-v0.8.6.tar.bz2" [build] template = "custom" dependencies = [ @@ -15,3 +15,9 @@ dependencies = [ "curl", "rsync", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/games/math/cosmic-ext-2048/recipe.toml b/recipes/wip/games/math/cosmic-ext-2048/recipe.toml index f1ba4bbe2..d34481e63 100644 --- a/recipes/wip/games/math/cosmic-ext-2048/recipe.toml +++ b/recipes/wip/games/math/cosmic-ext-2048/recipe.toml @@ -1,15 +1,16 @@ #TODO app source error [source] git = "https://github.com/Kartonrealista/cosmic-ext-2048" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT +cookbook_cargo mkdir -pv "${COOKBOOK_STAGE}"/usr/share/applications mkdir -pv "${COOKBOOK_STAGE}"/usr/share/metainfo mkdir -pv "${COOKBOOK_STAGE}"/usr/share/icons cp -rv "${COOKBOOK_SOURCE}"/res/io.github.Kartonrealista.cosmic-ext-2048.desktop "${COOKBOOK_STAGE}"/usr/share/applications cp -rv "${COOKBOOK_SOURCE}"/res/io.github.Kartonrealista.cosmic-ext-2048.metainfo.xml "${COOKBOOK_STAGE}"/usr/share/metainfo cp -rv "${COOKBOOK_SOURCE}"/res/icons/hicolor "${COOKBOOK_STAGE}"/usr/share/icons -DYNAMIC_INIT -cookbook_cargo """ diff --git a/recipes/wip/games/math/t4kcommon/recipe.toml b/recipes/wip/games/math/t4kcommon/recipe.toml index 6e503e46b..e4c426706 100644 --- a/recipes/wip/games/math/t4kcommon/recipe.toml +++ b/recipes/wip/games/math/t4kcommon/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO find a way to disable speech-dispatcher dep # build instructions: https://github.com/tux4kids/t4kcommon/blob/master/INSTALL#L33 [source] git = "https://github.com/tux4kids/t4kcommon" @@ -9,12 +9,16 @@ autotools_recursive_regenerate """ [build] template = "configure" +configureflags = [ + "--without-sdlnet" +] dependencies = [ "sdl1", "sdl1-mixer", "sdl1-image", "sdl-pango", - "sdl2-net", + #"sdl1-net", "libpng", "libxml2", + "librsvg", ] diff --git a/recipes/wip/games/math/tuxmath/recipe.toml b/recipes/wip/games/math/tuxmath/recipe.toml index 901e63d76..07ea03668 100644 --- a/recipes/wip/games/math/tuxmath/recipe.toml +++ b/recipes/wip/games/math/tuxmath/recipe.toml @@ -1,7 +1,8 @@ -#TODO not compiled or tested +#TODO fix t4kcommon dep # build instructions: https://github.com/tux4kids/tuxmath/blob/master/doc/INSTALL [source] git = "https://github.com/tux4kids/tuxmath" +rev = "febcf7b" shallow_clone = true script = """ autotools_recursive_regenerate diff --git a/recipes/wip/games/music/oshu/recipe.toml b/recipes/wip/games/music/oshu/recipe.toml index 4e8df3eb8..cd3fd0d74 100644 --- a/recipes/wip/games/music/oshu/recipe.toml +++ b/recipes/wip/games/music/oshu/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/fmang/oshu" rev = "2.0.3" diff --git a/recipes/wip/games/music/performous-composer/recipe.toml b/recipes/wip/games/music/performous-composer/recipe.toml deleted file mode 100644 index 5393e0f2c..000000000 --- a/recipes/wip/games/music/performous-composer/recipe.toml +++ /dev/null @@ -1,10 +0,0 @@ -#TODO not compiled or tested -# build instructions - https://github.com/performous/performous/wiki/Composer -[source] -git = "https://github.com/performous/composer" -[build] -template = "cmake" -dependencies = [ - "qt5-base", - "ffmpeg6", -] diff --git a/recipes/wip/games/open-world/asciicker/recipe.toml b/recipes/wip/games/open-world/asciicker/recipe.toml index 2d6e1c9b0..336f3221a 100644 --- a/recipes/wip/games/open-world/asciicker/recipe.toml +++ b/recipes/wip/games/open-world/asciicker/recipe.toml @@ -1,14 +1,27 @@ -#TODO missing script for gnu make -#TODO build the game, term and server -#TODO build the terminal and sdl2 frontends -# makeflags: -DSERVER -DGAME -DUSE_SDL2 -DPURE_TERM -DUSE_GPM +# Y9 version have unnecessary v8 JS dependency +#TODO build and test +# build script: https://github.com/msokalski/asciicker/blob/y8/build.sh [source] git = "https://github.com/msokalski/asciicker" -rev = "8ff75d0c5a8d2745a8ad6a8a841dd31a46e81635" +rev = "Y8" +shallow_clone = true [build] template = "custom" dependencies = [ "mesa", - "sdl2", + "libx11", + "libxinerama", "libgpm", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" -f makefile_asciiid +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" -f makefile_server +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" -f makefile_game +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" -f makefile_game_term +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" -f makefile_asciiid +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" -f makefile_server +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" -f makefile_game +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" -f makefile_game_term +""" diff --git a/recipes/wip/games/open-world/leafish/recipe.toml b/recipes/wip/games/open-world/leafish/recipe.toml index fb23475a8..9dfc551ed 100644 --- a/recipes/wip/games/open-world/leafish/recipe.toml +++ b/recipes/wip/games/open-world/leafish/recipe.toml @@ -1,6 +1,7 @@ -#TODO make gtk3 work +#TODO glutin crate error (after cargo update) [source] git = "https://github.com/Lea-fish/Leafish" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/games/open-world/teloren/recipe.toml b/recipes/wip/games/open-world/teloren/recipe.toml index bc7e1dafc..cf8a61cfb 100644 --- a/recipes/wip/games/open-world/teloren/recipe.toml +++ b/recipes/wip/games/open-world/teloren/recipe.toml @@ -1,5 +1,6 @@ #TODO quinn-udp crate error [source] git = "https://github.com/zesterer/teloren" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/platform/dinorunner-sdl/recipe.toml b/recipes/wip/games/platform/dinorunner-sdl/recipe.toml index eaa30775c..c4bbd2813 100644 --- a/recipes/wip/games/platform/dinorunner-sdl/recipe.toml +++ b/recipes/wip/games/platform/dinorunner-sdl/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't find CMakeLists.txt file [source] git = "https://github.com/AKJ7/dinorunner" rev = "v1.3.2" diff --git a/recipes/wip/games/rpg/kingslayer/recipe.toml b/recipes/wip/games/rpg/kingslayer/recipe.toml index e1d1df0f7..b2ba1ebad 100644 --- a/recipes/wip/games/rpg/kingslayer/recipe.toml +++ b/recipes/wip/games/rpg/kingslayer/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/Zaechus/kingslayer" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/servers/cuberite/recipe.toml b/recipes/wip/games/servers/cuberite/recipe.toml index 7b19d796a..df24af3b4 100644 --- a/recipes/wip/games/servers/cuberite/recipe.toml +++ b/recipes/wip/games/servers/cuberite/recipe.toml @@ -1,6 +1,8 @@ -#TODO not compiled or tested +#TODO bundled mbedtls build error # build instructions: https://github.com/cuberite/cuberite/blob/master/COMPILING.md#building-1 [source] git = "https://github.com/cuberite/cuberite" +rev = "7fd3fa5" +shallow_clone = true [build] template = "cmake" diff --git a/recipes/wip/net/server/spadesx/recipe.toml b/recipes/wip/games/servers/spadesx/recipe.toml similarity index 100% rename from recipes/wip/net/server/spadesx/recipe.toml rename to recipes/wip/games/servers/spadesx/recipe.toml diff --git a/recipes/wip/games/sim/egregoria/recipe.toml b/recipes/wip/games/sim/egregoria/recipe.toml index 13e33904d..9c2072b1c 100644 --- a/recipes/wip/games/sim/egregoria/recipe.toml +++ b/recipes/wip/games/sim/egregoria/recipe.toml @@ -1,8 +1,10 @@ #TODO winit crate error [source] git = "https://github.com/Uriopass/Egregoria" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT cookbook_cargo_packages native_app """ diff --git a/recipes/wip/games/sim/ferroliquid/recipe.toml b/recipes/wip/games/sim/ferroliquid/recipe.toml index 089e490d2..d7a962760 100644 --- a/recipes/wip/games/sim/ferroliquid/recipe.toml +++ b/recipes/wip/games/sim/ferroliquid/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO glutin crate error [source] git = "https://github.com/tneukom/ferroliquid" shallow_clone = true diff --git a/recipes/wip/games/sim/game-of-life-piston/recipe.toml b/recipes/wip/games/sim/game-of-life-piston/recipe.toml index 92552bf8f..3a6e43df6 100644 --- a/recipes/wip/games/sim/game-of-life-piston/recipe.toml +++ b/recipes/wip/games/sim/game-of-life-piston/recipe.toml @@ -1,5 +1,6 @@ #TODO outdated libc crate [source] git = "https://github.com/Arcterus/game-of-life" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/sim/game-of-life-rs/recipe.toml b/recipes/wip/games/sim/game-of-life-rs/recipe.toml index 45d14fcb9..99b2df158 100644 --- a/recipes/wip/games/sim/game-of-life-rs/recipe.toml +++ b/recipes/wip/games/sim/game-of-life-rs/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/kachark/game-of-life-rs" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/sim/nbodysim/recipe.toml b/recipes/wip/games/sim/nbodysim/recipe.toml index 9914a961f..569574c20 100644 --- a/recipes/wip/games/sim/nbodysim/recipe.toml +++ b/recipes/wip/games/sim/nbodysim/recipe.toml @@ -1,10 +1,12 @@ #TODO outdated crates [source] git = "https://github.com/timokoesters/nbodysim" +shallow_clone = true [build] template = "custom" script = """ mkdir -pv "${COOKBOOK_STAGE}"/usr/share/nbodysim cp -rv "${COOKBOOK_SOURCE}"/examples/* "${COOKBOOK_STAGE}"/usr/share/nbodysim +DYNAMIC_INIT cookbook_cargo """ diff --git a/recipes/wip/games/sim/termfarm/recipe.toml b/recipes/wip/games/sim/termfarm/recipe.toml index 8d8b2448f..104f817e2 100644 --- a/recipes/wip/games/sim/termfarm/recipe.toml +++ b/recipes/wip/games/sim/termfarm/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO source code error [source] git = "https://github.com/indium114/termfarm" shallow_clone = true diff --git a/recipes/wip/games/space/endless-sky/recipe.toml b/recipes/wip/games/space/endless-sky/recipe.toml index de8798177..70bf5a1c0 100644 --- a/recipes/wip/games/space/endless-sky/recipe.toml +++ b/recipes/wip/games/space/endless-sky/recipe.toml @@ -1,8 +1,9 @@ -#TODO not compiled or tested +#TODO fix libmad dep # build instructions: https://github.com/endless-sky/endless-sky/blob/master/docs/readme-cmake.md#building-the-game [source] git = "https://github.com/endless-sky/endless-sky" -rev = "95e72950e1554392666fa41bb18c978868aa6611" +rev = "v0.11.2" +shallow_clone = true [build] template = "cmake" dependencies = [ diff --git a/recipes/wip/games/space/naev/recipe.toml b/recipes/wip/games/space/naev/recipe.toml index 994c24605..99946836f 100644 --- a/recipes/wip/games/space/naev/recipe.toml +++ b/recipes/wip/games/space/naev/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix openblas dep # build instructions: https://github.com/naev/naev/wiki/Compiling-on-*nix [source] tar = "https://github.com/naev/naev/releases/download/v0.10.6/naev-0.10.6-source.tar.xz" diff --git a/recipes/wip/games/space/osirion/recipe.toml b/recipes/wip/games/space/osirion/recipe.toml index b8707c179..754ec40cf 100644 --- a/recipes/wip/games/space/osirion/recipe.toml +++ b/recipes/wip/games/space/osirion/recipe.toml @@ -6,7 +6,7 @@ tar = "http://osirion.org/files/osirion-0.2.8-src.tar.bz2" template = "configure" dependencies = [ "zlib", - "bullet-physics", + "bullet", "libpng", "libjpeg", "sdl2", diff --git a/recipes/wip/games/space/outfly/recipe.toml b/recipes/wip/games/space/outfly/recipe.toml index a5bd5537d..ccebb4ff9 100644 --- a/recipes/wip/games/space/outfly/recipe.toml +++ b/recipes/wip/games/space/outfly/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO bevy_embedded_assets crate error [source] git = "https://codeberg.org/outfly/outfly" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/space/rebels-in-the-sky/recipe.toml b/recipes/wip/games/space/rebels-in-the-sky/recipe.toml index 607a298a1..75c831235 100644 --- a/recipes/wip/games/space/rebels-in-the-sky/recipe.toml +++ b/recipes/wip/games/space/rebels-in-the-sky/recipe.toml @@ -1,5 +1,6 @@ -#TODO async-io and rustix crate error +#TODO libz-ng-sys crate error, use zlib-ng recipe? [source] git = "https://github.com/ricott1/rebels-in-the-sky" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/space/rust-belt/recipe.toml b/recipes/wip/games/space/rust-belt/recipe.toml index 37a10b5be..eed3c64f7 100644 --- a/recipes/wip/games/space/rust-belt/recipe.toml +++ b/recipes/wip/games/space/rust-belt/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO outdated winit crate (after cargo update) [source] git = "https://github.com/johnthagen/rust-belt" [build] diff --git a/recipes/wip/games/strategy/0ad/recipe.toml b/recipes/wip/games/strategy/0ad/recipe.toml index dea0fc534..5d9a6d1ab 100644 --- a/recipes/wip/games/strategy/0ad/recipe.toml +++ b/recipes/wip/games/strategy/0ad/recipe.toml @@ -1,4 +1,4 @@ -#TODO Missing script for a make build system, see https://trac.wildfiregames.com/wiki/BuildInstructions#Linux +#TODO add script for gnu make: https://gitea.wildfiregames.com/0ad/0ad/wiki/BuildInstructions#linux #TODO The Atlas editor needs to be disabled with the build option "--disable-atlas" to avoid GTK3 dependency (WxWidgetsGTK) #TODO Maybe needs to run update-workspaces.sh before #TODO Require recipes for SpiderMonkey and libicu (Unicode) diff --git a/recipes/wip/games/strategy/brutal-chess/recipe.toml b/recipes/wip/games/strategy/brutal-chess/recipe.toml index a2e73f170..98fbebc52 100644 --- a/recipes/wip/games/strategy/brutal-chess/recipe.toml +++ b/recipes/wip/games/strategy/brutal-chess/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't recognize redox [source] tar = "https://sourceforge.net/projects/brutalchess/files/brutalchess-alpha/brutalchess-alpha-0.5.2/brutalchess-alpha-0.5.2-src.tar.gz/download" [build] diff --git a/recipes/wip/games/strategy/go-tui/recipe.toml b/recipes/wip/games/strategy/go-tui/recipe.toml index a0fb14361..3e6c25f47 100644 --- a/recipes/wip/games/strategy/go-tui/recipe.toml +++ b/recipes/wip/games/strategy/go-tui/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] git = "https://github.com/rs-jensen/go-game-tui" shallow_clone = true diff --git a/recipes/wip/games/strategy/hammurabi/recipe.toml b/recipes/wip/games/strategy/hammurabi/recipe.toml index 079b89bb7..96582b10f 100644 --- a/recipes/wip/games/strategy/hammurabi/recipe.toml +++ b/recipes/wip/games/strategy/hammurabi/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/stjepangolemac/hammurabi" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/games/strategy/stockfish/recipe.toml b/recipes/wip/games/strategy/stockfish/recipe.toml index 61fc0a4ea..0c6ca09d3 100644 --- a/recipes/wip/games/strategy/stockfish/recipe.toml +++ b/recipes/wip/games/strategy/stockfish/recipe.toml @@ -1,6 +1,14 @@ -#TODO missing script for "make", see https://disservin.github.io/stockfish-docs/pages/Compiling-from-source.html +#TODO build and test +# build instructions: https://github.com/official-stockfish/Stockfish/wiki/Compiling-from-source [source] git = "https://github.com/official-stockfish/Stockfish" -rev = "68e1e9b3811e16cad014b590d7443b9063b3eb52" +rev = "sf_19" +shallow_clone = true [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/src" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" build -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/gnome/gimp/gimp.desktop b/recipes/wip/gnome/gimp/gimp.desktop new file mode 100644 index 000000000..f65f6370c --- /dev/null +++ b/recipes/wip/gnome/gimp/gimp.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=GIMP +GenericName=Image Editor +Comment=Create images and edit photographs +Keywords=GIMP;graphic;design;illustration;painting; +Exec=gimp +TryExec=gimp +Icon=gimp +Terminal=false +Categories=Graphics;2DGraphics;RasterGraphics;GTK; +StartupNotify=true +MimeType=image/x-xcf; +StartupWMClass=gimp diff --git a/recipes/wip/gnome/gimp/gimp.sh b/recipes/wip/gnome/gimp/gimp.sh new file mode 100755 index 000000000..28158e359 --- /dev/null +++ b/recipes/wip/gnome/gimp/gimp.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +export GTK_USE_PORTAL=0 + +export GDK_PIXBUF_MODULE_FILE="$HOME/.cache/gimp-gdk-pixbuf-loaders.cache" + +if [ ! -f "$GDK_PIXBUF_MODULE_FILE" ]; then + echo "Generating GdkPixbuf loaders cache..." + mkdir -p "$HOME/.cache" + gdk-pixbuf-query-loaders > "$GDK_PIXBUF_MODULE_FILE" +fi + +exec /usr/bin/gimp-3.2 "$@" diff --git a/recipes/wip/gnome/gimp/icons/16x16.png b/recipes/wip/gnome/gimp/icons/16x16.png new file mode 100644 index 000000000..e48e60881 Binary files /dev/null and b/recipes/wip/gnome/gimp/icons/16x16.png differ diff --git a/recipes/wip/gnome/gimp/icons/256x256.png b/recipes/wip/gnome/gimp/icons/256x256.png new file mode 100644 index 000000000..8e39e7b80 Binary files /dev/null and b/recipes/wip/gnome/gimp/icons/256x256.png differ diff --git a/recipes/wip/gnome/gimp/icons/32x32.png b/recipes/wip/gnome/gimp/icons/32x32.png new file mode 100644 index 000000000..6b8aa7bb9 Binary files /dev/null and b/recipes/wip/gnome/gimp/icons/32x32.png differ diff --git a/recipes/wip/gnome/gimp/icons/48x48.png b/recipes/wip/gnome/gimp/icons/48x48.png new file mode 100644 index 000000000..2f936097f Binary files /dev/null and b/recipes/wip/gnome/gimp/icons/48x48.png differ diff --git a/recipes/wip/gnome/gimp/icons/64x64.png b/recipes/wip/gnome/gimp/icons/64x64.png new file mode 100644 index 000000000..cc65ee2ea Binary files /dev/null and b/recipes/wip/gnome/gimp/icons/64x64.png differ diff --git a/recipes/wip/gnome/gimp/recipe.toml b/recipes/wip/gnome/gimp/recipe.toml index cd4d73156..9a912d825 100644 --- a/recipes/wip/gnome/gimp/recipe.toml +++ b/recipes/wip/gnome/gimp/recipe.toml @@ -1,36 +1,59 @@ -#TODO not compiled or tested -#TODO discover minimum dependencies from meson log +#TODO test more # build instructions: https://developer.gimp.org/core/setup/build/3.0/INSTALL # all build options: https://gitlab.gnome.org/GNOME/gimp/-/blob/master/meson_options.txt?ref_type=heads [source] tar = "https://download.gimp.org/gimp/v3.2/gimp-3.2.4.tar.xz" -[build] -template = "meson" -mesonflags = [ - "-Dcheck-update=no", - "-Dlibbacktrace=false", - "-Dlibunwind=false", - "-Dprint=false", +patches = [ + "redox.patch" +] +[build] +template = "custom" +script = """ +DYNAMIC_INIT +rsync -a -v ${COOKBOOK_SYSROOT}/usr/share/pkgconfig/*.pc ${COOKBOOK_SYSROOT}/lib/pkgconfig/ +COOKBOOK_MESON_FLAGS+=( + -Denable-default-bin=enabled + -Denable-console-bin=true + -Dcheck-update=no + -Dlibbacktrace=false + -Dlibunwind=false + -Dprint=false + -Dshmem-type=posix +) +cookbook_meson + +# plugins causes hang (undo these mv to test) +mv "${COOKBOOK_STAGE}/usr/lib/gimp/3.0/extensions" "${COOKBOOK_STAGE}/usr/lib/gimp/3.0/extensions.disabled" +mv "${COOKBOOK_STAGE}/usr/lib/gimp/3.0/plug-ins" "${COOKBOOK_STAGE}/usr/lib/gimp/3.0/plug-ins.disabled" + +# icons are not converted to png (see patches) +HICOLOR="${COOKBOOK_STAGE}/usr/share/icons/hicolor" +for size in 16 32 48 64 256; do + mkdir -p "${HICOLOR}/${size}x${size}/apps" + cp -f "${COOKBOOK_RECIPE}/icons/${size}x${size}.png" "${HICOLOR}/${size}x${size}/apps/gimp.png" +done +# TODO: /usr/share/gimp/3.0/images/gimp-splash.png + +rm "${COOKBOOK_STAGE}/usr/bin/gimp" # symlink to gimp-3.2 +cp "${COOKBOOK_RECIPE}/gimp.desktop" "${COOKBOOK_STAGE}/usr/share/applications/gimp.desktop" +cp "${COOKBOOK_RECIPE}/gimp.sh" "${COOKBOOK_STAGE}/usr/bin/gimp" +""" +dependencies = [ + "appstream", + "atk", + "babl", + "gtk3", + "gegl", + "gexiv2", + "libarchive", + "liblcms", + "libmypaint", + "librsvg", + "mypaint-brushes", + "libpoppler", + "poppler-data", + "shared-mime-info", +] +dev-dependencies = [ + "host:libxml2" ] -# dependencies = [ -# "gtk3", -# "gobject-introspection", -# "glib", -# "cairo", -# "pango", -# "liblcms", -# "libmypaint", -# "gexiv2", -# "gegl", -# "babl", -# "librsvg", -# "libtiff", -# "libjpeg", -# "libpng", -# "fontconfig", -# "freetype2", -# "atk", -# "harfbuzz", -# "bzip2", -# "zlib", -# ] diff --git a/recipes/wip/gnome/gimp/redox.patch b/recipes/wip/gnome/gimp/redox.patch new file mode 100644 index 000000000..ded94e2a5 --- /dev/null +++ b/recipes/wip/gnome/gimp/redox.patch @@ -0,0 +1,472 @@ +diff -ruwN source/app/widgets/gimpdashboard.c source-new/app/widgets/gimpdashboard.c +--- source/app/widgets/gimpdashboard.c 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/app/widgets/gimpdashboard.c 2026-10-08 08:12:01.951143761 +0000 +@@ -2243,7 +2243,7 @@ + clock_t curr_usage; + struct tms tms; + +- curr_clock = times (&tms); ++ curr_clock = (clock_t) -1;//times (&tms); + + if (curr_clock == (clock_t) -1) + { +diff -ruwN source/desktop/meson.build source-new/desktop/meson.build +--- source/desktop/meson.build 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/desktop/meson.build 2026-10-08 06:34:47.957042051 +0000 +@@ -5,7 +5,7 @@ + desktop_conf.set('GIMP_VERSION', gimp_version) + desktop_conf.set('GIMP_APP_VERSION', gimp_app_version) + desktop_conf.set('GIMP_DESKTOP_NAME', gimp_desktop_name) +-desktop_conf.set('MIME_TYPES', 'image/x-xcf;' + MIMEtypes_dep.get_variable('MIMEtypes')) ++desktop_conf.set('MIME_TYPES', 'image/x-xcf;') + desktop_conf.set('BUG_REPORT_URL', bug_report_url) + + desktopfilein = configure_file( +diff -ruwN source/gimp-data/meson.build source-new/gimp-data/meson.build +--- source/gimp-data/meson.build 2026-04-07 19:54:05.000000000 +0000 ++++ source-new/gimp-data/meson.build 2026-10-08 06:34:28.962938109 +0000 +@@ -1,9 +1,5 @@ + ## Tools ## + +-native_glib_minver = '2.2.0' +-native_glib = dependency('glib-2.0', version: '>='+native_glib_minver, native: true) +-native_rsvg = dependency('librsvg-2.0', version: '>='+rsvg_minver, native: true) +- + subdir('tools') + + ## Data ## +diff -ruwN source/gimp-data/tools/colorsvg2png.c source-new/gimp-data/tools/colorsvg2png.c +--- source/gimp-data/tools/colorsvg2png.c 2026-04-07 19:54:05.000000000 +0000 ++++ source-new/gimp-data/tools/colorsvg2png.c 2026-10-08 06:34:20.069421216 +0000 +@@ -15,80 +15,52 @@ + * along with this program. If not, see . + */ + +-#include +-#include ++#include ++#include + ++// Stubbed to avoid compiling native glib/librsvg + int + main (int argc, char **argv) + { +- GError *error = NULL; +- RsvgHandle *handle; +- cairo_surface_t *surface; +- cairo_t *cr; +-#if LIBRSVG_CHECK_VERSION(2, 46, 0) +- RsvgRectangle target_rect; +-#endif +- +- gchar *input; +- gchar *output; +- gint dim; +- gint retval = 0; ++ FILE *in_file; ++ FILE *out_file; ++ size_t bytes_read; ++ char buffer[8192]; + + if (argc != 4) + { +- g_fprintf (stderr, "Usage: colorsvg2png svg-image png-output size\n"); ++ fprintf (stderr, "Usage: colorsvg2png svg-image png-output size\n"); + return 1; + } + +- input = argv[1]; +- output = argv[2]; +- dim = (gint) g_ascii_strtoull (argv[3], NULL, 10); +- if (dim < 1) ++ in_file = fopen (argv[1], "rb"); ++ if (!in_file) + { +- g_fprintf (stderr, "Usage: invalid dimension %d\n", dim); ++ fprintf (stderr, "Error: failed to open input file '%s'\n", argv[1]); + return 1; + } + +- handle = rsvg_handle_new_from_file (input, &error); +- if (! handle) ++ out_file = fopen (argv[2], "wb"); ++ if (!out_file) + { +- g_fprintf (stderr, +- "Error: failed to load '%s' as SVG: %s\n", +- input, error->message); +- g_error_free (error); ++ fprintf (stderr, "Error: failed to open output file '%s'\n", argv[2]); ++ fclose (in_file); + return 1; + } + +- surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, dim, dim); +- cr = cairo_create (surface); +- +-#if LIBRSVG_CHECK_VERSION(2, 46, 0) +- target_rect.x = target_rect.y = 0; +- target_rect.width = target_rect.height = dim; +- +- if (! rsvg_handle_render_document (handle, cr, &target_rect, NULL)) +-#else +- if (! rsvg_handle_render_cairo (handle, cr)) +-#endif ++ while ((bytes_read = fread (buffer, 1, sizeof(buffer), in_file)) > 0) + { +- g_fprintf (stderr, +- "Error: failed to render '%s'\n", +- input); +- retval = 1; +- } +- +- if (retval == 0 && +- cairo_surface_write_to_png (surface, output) != CAIRO_STATUS_SUCCESS) ++ if (fwrite (buffer, 1, bytes_read, out_file) != bytes_read) + { +- g_fprintf (stderr, +- "Error: failed to write '%s'\n", +- output); +- retval = 1; ++ fprintf (stderr, "Error: failed to write to '%s'\n", argv[2]); ++ fclose (in_file); ++ fclose (out_file); ++ return 1; ++ } + } + +- cairo_surface_destroy (surface); +- cairo_destroy (cr); +- g_object_unref (handle); ++ fclose (in_file); ++ fclose (out_file); + +- return retval; ++ return 0; + } +diff -ruwN source/gimp-data/tools/meson.build source-new/gimp-data/tools/meson.build +--- source/gimp-data/tools/meson.build 2026-04-07 19:54:05.000000000 +0000 ++++ source-new/gimp-data/tools/meson.build 2026-10-08 06:34:25.152716659 +0000 +@@ -2,8 +2,6 @@ + 'colorsvg2png.c', + native: true, + dependencies: [ +- native_glib, +- native_rsvg + ], + # In case b_sanitize was set, we don't really care if the tool has issues (in + # particular we experienced some memory leaks with b_sanitize=address, within +diff -ruwN source/libgimp/gimpplugin.c source-new/libgimp/gimpplugin.c +--- source/libgimp/gimpplugin.c 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/libgimp/gimpplugin.c 2026-10-08 07:14:34.086664710 +0000 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + #include "gimp.h" + +diff -ruwN source/libgimp/meson.build source-new/libgimp/meson.build +--- source/libgimp/meson.build 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/libgimp/meson.build 2026-10-08 08:06:39.354346391 +0000 +@@ -637,40 +637,3 @@ + ) + endif + endif +- +-if not platform_osx and host_cpu_family != 'x86' +- nm = find_program('nm', required: false) +- +- # Verify .def files for Windows linking. +- # We check this on non-Windows platform (Debian) on CI, and on Windows itself. +- custom_target('check-def-files', +- input: [ +- '../libgimpbase/gimpbase.def', +- '../libgimpcolor/gimpcolor.def', +- '../libgimpconfig/gimpconfig.def', +- '../libgimp/gimp.def', +- '../libgimp/gimpui.def', +- '../libgimpmath/gimpmath.def', +- '../libgimpmodule/gimpmodule.def', +- '../libgimpthumb/gimpthumb.def', +- '../libgimpwidgets/gimpwidgets.def', +- ], +- depends: [ +- libgimpbase, +- libgimpcolor, +- libgimpconfig, +- libgimp, +- libgimpui, +- libgimpmath, +- libgimpmodule, +- libgimpthumb, +- libgimpwidgets +- ], +- env: nm.found() ? { 'NM': nm.full_path() } : {}, +- output: [ 'check-def-files', ], +- command: [ +- python, meson.project_source_root() / 'tools' / 'defcheck.py', meson.project_source_root(), +- ], +- build_by_default: true, +- ) +-endif +diff -ruwN source/libgimpbase/meson.build source-new/libgimpbase/meson.build +--- source/libgimpbase/meson.build 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/libgimpbase/meson.build 2026-10-08 06:37:40.002041333 +0000 +@@ -135,20 +135,3 @@ + libgimpbase_headers, + subdir: gimp_api_name / 'libgimpbase', + ) +- +-# Test program, not installed +-executable('test-cpu-accel', +- 'test-cpu-accel.c', +- include_directories: rootInclude, +- dependencies: [ +- glib, +- ], +- c_args: [ +- '-DG_LOG_DOMAIN="LibGimpBase"', +- '-DGIMP_BASE_COMPILATION', +- ], +- link_with: [ +- libgimpbase, +- ], +- install: false, +-) +diff -ruwN source/meson.build source-new/meson.build +--- source/meson.build 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/meson.build 2026-10-08 07:11:16.124158097 +0000 +@@ -486,8 +486,6 @@ + # minimum requirement. + add_project_arguments('-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_76', language: 'c') + +-gi = dependency('gobject-introspection-1.0') +- + gobject = dependency('gobject-2.0', version: '>='+glib_minver) + gmodule = dependency('gmodule-no-export-2.0') + +@@ -573,38 +571,6 @@ + pangoft2 = dependency('pangoft2', version: '>='+pango_minver) + endif + +-if cc.run(''' +- #include +- #include +- #include +- +- int main () { +- const char *text = "ภาษาไทย"; +- int char_count = 7; +- int byte_len = strlen(text); +- int breaks_found = 0; +- +- PangoLogAttr *attrs = (PangoLogAttr *) calloc(char_count + 1, sizeof(PangoLogAttr)); +- +- pango_get_log_attrs (text, byte_len, -1, pango_language_from_string("th"), attrs, char_count + 1); +- for (int i = 1; i < char_count; i++) { +- if (attrs[i].is_line_break) +- breaks_found++; +- } +- +- if (breaks_found > 0) +- return 0; +- else +- return 1; +- } +- ''', +- name: 'pango is built with libthai support', +- dependencies: [pango]).returncode() != 0 +- thai_warning = 'Pango was not built with libthai support. Line breaking on Text tool may be incorrect on Thai language.' +- warning(thai_warning) +- warnings += thai_warning +-endif +- + conf.set('PANGO_DISABLE_DEPRECATED',pangocairo.version().version_compare('<1.43')) + + # Check if Pango is built with a recent fontconfig +@@ -801,7 +767,7 @@ + ################################################################################ + # Check for x11 support + +-x11_target = gtk3.get_variable(pkgconfig: 'targets').contains('x11') ++x11_target = false + + x11 = x11_target ? dependency('x11') : no_dep + xmu = x11_target ? dependency('xmu') : no_dep +@@ -1200,45 +1166,7 @@ + py_candidates += ['python3.' + i.to_string()] + endforeach + +-python = disabler() +-pygobject_found = '' +-pygobject_gexiv2_found = false +-foreach py : py_candidates +- #Check if PyGobject installation have pycairo (#13105) +- python_tmp = pythonmod.find_installation(py, modules: ['gi', 'cairo'], required: false) +- if python_tmp.found() and python_tmp.language_version().version_compare(python3_minver) +- python = python_tmp +- #Check if PyGObject installation have minimum version +- pygobject_found = run_command(python_tmp, '-c', +- '\n'.join([ +- '''import gi''', +- '''print(".".join(map(str, gi.version_info)))''']), +- check: false) +- #Check if PyGObject installation have gexiv2 (#15179) +- #(This is specially important on MacPorts where gexiv2 have many python variants) +- pygobject_gexiv2_found = run_command(python_tmp, '-c', +- '\n'.join([ +- '''import sys, gi''', +- '''try:''', +- ''' import gi.repository.GExiv2''', +- '''except (ImportError):''', +- ''' sys.exit(1)''']), +- check: false).returncode() == 0 +- if pygobject_found.returncode() == 0 and pygobject_found.stdout().strip().version_compare(pygobject_minver) and pygobject_gexiv2_found +- break +- endif +- endif +-endforeach +- +-if not python.found() or not python.language_version().version_compare(python3_minver) +- error('No suitable Python installation (with cairo and gi modules) found. Minimum supported version: @0@'.format(python3_minver)) +-endif +-message('Found Python @0@'.format(python.language_version())) +- +-if pygobject_found.returncode() != 0 or not pygobject_found.stdout().strip().version_compare(pygobject_minver) or not pygobject_gexiv2_found +- error('No suitable PyGObject (with GExiv2 submodule) found. Minimum supported version: @0@'.format(pygobject_minver)) +-endif +-message('Found PyGObject: @0@'.format(pygobject_found.stdout().strip())) ++python = pythonmod.find_installation('python3') + + ## Javascript + +@@ -1756,49 +1684,7 @@ + ).returncode() == 0 + + generate_version_h = is_git_repository or not has_version_h +-if generate_version_h +- gitversion_h1 = vcs_tag( +- input : 'app/git-version.h.in', +- output: 'git-version.h.in.1', +- command: [ 'git', 'describe', '--always', ], +- replace_string: '@GIMP_GIT_VERSION@', +- fallback: 'unknown (unsupported)', +- ) +- gitversion_h2 = vcs_tag( +- input : gitversion_h1, +- output: 'git-version.h.in.2', +- command: [ 'git', 'rev-parse', '--short', 'HEAD', ], +- replace_string: '@GIMP_GIT_VERSION_ABBREV@', +- fallback: 'unknown (unsupported)', +- ) +- gitversion_h = vcs_tag( +- input : gitversion_h2, +- output: 'git-version.h', +- command: [ 'git', 'log', '-n1', '--date=format:%Y', '--pretty=%cd', ], +- replace_string: '@GIMP_GIT_LAST_COMMIT_YEAR@', +- fallback: 'unknown (unsupported)', +- ) +- +- git = find_program('git', required: false) +- if not is_git_repository or not git.found() +- # We create git-version.h but know it will be useless because we are +- # not in a git repository. Output a warning. +- git_warning = ''' +- +- UNSUPPORTED BUILD! +- +- This is not a distribution tarball (git-version.h missing) and +- we could not establish the corresponding commit (either this is +- not a git repository or git command is missing). Therefore +- we have no reference for debugging. +- Please either use release tarballs or build from the repository. +- ''' +- warning(git_warning) +- warnings += git_warning +- endif +-else + gitversion_h = files('git-version.h') +-endif + + install_conf = configuration_data() + install_conf.set('GIMP_APP_VERSION', gimp_app_version) +@@ -2071,7 +1957,7 @@ + elif platform_osx + gimp_exe_depends += [patched_libgimp_gir, patched_libgimpui_gir] + +- gimp_run_env.set('GIMP_GI_DIR', gi.get_variable('libdir')) ++ gimp_run_env.set('GIMP_GI_DIR', '/usr/lib') + + gimp_run_env.set('GIMP_TEMP_UPDATE_RPATH', gimp_real_exe.full_path()) + gimp_run_env.prepend('GIMP_TEMP_UPDATE_RPATH', libgimp.full_path()) +@@ -2087,20 +1973,10 @@ + endforeach + endif + else +- # Cross-builds require an existing native GIMP installed, unless we +- # can run target binaries. +- native_gimp_exe = find_program([gimpconsole_exe_name, gimpmain_exe_name], +- native: true, required: false) +- +- if not native_gimp_exe.found() +- error('When cross-compiling, the build requires either an exe_wrapper or a native GIMP installed (@0@ or @1@).'.format(gimpconsole_exe_name, gimpmain_exe_name)) +- endif +- +- gimp_run_env.set('GIMP_SELF_IN_BUILD', native_gimp_exe.full_path()) + gimp_exe_depends = [] + endif + +-gimp_exe = find_program('tools'/'in-build-gimp.py') ++gimp_exe = disabler() # we're stripping native gimp build + + ################################################################################ + # Subdirs: part 2 +@@ -2108,14 +1984,6 @@ + # gimp-data submodule part 2 + subdir('gimp-data/images/') + +-# Unit testing +-subdir('app/tests') +-subdir('libgimp/tests') +- +-# Docs +-subdir('docs') +-subdir('devel-docs') +- + # Inno Windows installer + if get_option('windows-installer') + subdir('po-windows-installer') +diff -ruwN source/plug-ins/meson.build source-new/plug-ins/meson.build +--- source/plug-ins/meson.build 2026-04-17 08:37:38.000000000 +0000 ++++ source-new/plug-ins/meson.build 2026-10-08 07:53:23.381004527 +0000 +@@ -34,8 +34,8 @@ + { 'name': 'metadata', }, + { 'name': 'pagecurl', }, + { 'name': 'print', }, +- { 'name': 'screenshot', }, +- { 'name': 'script-fu', }, ++# screenshot need x11 ++# script-fu need 'gi' + { 'name': 'selection-to-path', } + ] + +@@ -92,17 +92,6 @@ + endif + endforeach + +- +-#Dynamically created list of supported files with the plugins lists above +-MIMEtypes_output = run_command( +- python, +- meson.current_source_dir() / 'generate_mime_ext.py', +- '--mime', +- meson.current_build_dir() / 'file_mimetypes.list', +- all_plugins_sources, check: true +-).stdout().strip() +-MIMEtypes_dep = declare_dependency(variables : {'MIMEtypes': MIMEtypes_output}) +- + if get_option('windows-installer') or get_option('ms-store') + custom_target('file_associations', + input : all_plugins_sources, diff --git a/recipes/wip/graphics/editors/blender-lts/recipe.toml b/recipes/wip/graphics/editors/blender-lts/recipe.toml index 8b578bdb3..76057a405 100644 --- a/recipes/wip/graphics/editors/blender-lts/recipe.toml +++ b/recipes/wip/graphics/editors/blender-lts/recipe.toml @@ -1,4 +1,5 @@ -#TODO not compiled or tested +#TODO fix openimageio dependency +#TODO enable brotli support in freetype2 recipe #TODO determine the minimum dependencies from cmake log # build instructions: https://developer.blender.org/docs/handbook/building_blender/ [source] @@ -11,22 +12,30 @@ cmakeflags = [ "-DWITH_GHOST_SDL=ON", "-DWITH_SDL=ON", "-DWITH_EXPERIMENTAL_FEATURES=OFF", + "-DWITH_VULKAN_BACKEND=OFF", + "-DWITH_INTERNATIONAL=OFF", + "-DWITH_PYTHON=OFF", + "-DWITH_LIBS_PRECOMPILED=OFF", ] -# dependencies = [ +dependencies = [ # "dbus", # "libdecor", -# "libjpeg", -# "libpng", -# "freetype2", + "libjpeg", + "libpng", + "zlib", + "libtiff", + "openimageio", +# "libvulkan", + "freetype2", # "fontconfig", -# "zstd", + "zstd", # "bzip2", # "xz", -# "sdl2", -# "libepoxy", + "sdl2", + "libepoxy", # "shaderc", # "libxml2", # "libharu", # "mesa-x11", # "libxkbcommon", -# ] +] diff --git a/recipes/wip/graphics/viewers/exhibit/recipe.toml b/recipes/wip/graphics/viewers/exhibit/recipe.toml index 9bdf621ef..17fb4081b 100644 --- a/recipes/wip/graphics/viewers/exhibit/recipe.toml +++ b/recipes/wip/graphics/viewers/exhibit/recipe.toml @@ -4,3 +4,6 @@ git = "https://github.com/Nokse22/Exhibit" rev = "v1.5.1" [build] template = "meson" +dev-dependencies = [ + "host:itstool", +] diff --git a/recipes/wip/graphics/viewers/f3d/recipe.toml b/recipes/wip/graphics/viewers/f3d/recipe.toml new file mode 100644 index 000000000..00a320357 --- /dev/null +++ b/recipes/wip/graphics/viewers/f3d/recipe.toml @@ -0,0 +1,14 @@ +#TODO compile and test +# build instructions: https://github.com/f3d-app/f3d/blob/master/doc/dev/05-BUILD.md +[source] +git = "https://github.com/f3d-app/f3d" +rev = "v3.5.0" +shallow_clone = true +[build] +template = "cmake" +cmakeflags = [ + "-DF3D_MODULE_CLIP=OFF", +] +dependencies = [ + "vtk", +] diff --git a/recipes/wip/graphics/viewers/meov/recipe.toml b/recipes/wip/graphics/viewers/meov/recipe.toml index 5c54b0a3f..daa3bb513 100644 --- a/recipes/wip/graphics/viewers/meov/recipe.toml +++ b/recipes/wip/graphics/viewers/meov/recipe.toml @@ -1,15 +1,21 @@ -#TODO make it use sdl2 recipe -#TODO determine if/what bundled dependencies need to be patched +#TODO make it use sdl2 recipe instead of bundled sdl2 # dependencies: https://github.com/seigtm/meov/tree/Baranov_0.3.0_Linux_Builds/dependencies [source] git = "https://github.com/seigtm/meov" branch = "Baranov_0.3.0_Linux_Builds" shallow_clone = true [build] -template = "cmake" -cmakeflags = [ - "-DMEOV_USING_OPENGL=false" -] +template = "custom" dependencies = [ "sdl2", ] +script = """ +DYNAMIC_INIT +COOKBOOK_CMAKE_FLAGS+=( + -DMEOV_USING_OPENGL=false + -DOPENGL_opengl_LIBRARY="/dev/null" + -DOPENGL_glx_LIBRARY="/dev/null" + +) +cookbook_cmake +""" diff --git a/recipes/wip/graphics/vr/alvr/recipe.toml b/recipes/wip/graphics/xr/alvr/recipe.toml similarity index 100% rename from recipes/wip/graphics/vr/alvr/recipe.toml rename to recipes/wip/graphics/xr/alvr/recipe.toml diff --git a/recipes/wip/image/converters/dipc/recipe.toml b/recipes/wip/image/converters/dipc/recipe.toml index a4bdfb619..b21b21ac8 100644 --- a/recipes/wip/image/converters/dipc/recipe.toml +++ b/recipes/wip/image/converters/dipc/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/doprz/dipc" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/image/converters/icy-sixel/recipe.toml b/recipes/wip/image/converters/icy-sixel/recipe.toml index 10e02eed8..fb3e526ab 100644 --- a/recipes/wip/image/converters/icy-sixel/recipe.toml +++ b/recipes/wip/image/converters/icy-sixel/recipe.toml @@ -1,7 +1,11 @@ -#TODO not compiled or tested +#TODO compiled but untested +#TODO need a command to copy the executable [source] git = "https://github.com/mkrueger/icy_sixel" shallow_clone = true [build] -template = "cargo" -cargopackages = ["icy_sixel-cli"] +template = "custom" +script = """ +DYNAMIC_INIT +cookbook_cargo_packages icy_sixel-cli +""" diff --git a/recipes/wip/image/editors/inkscape/recipe.toml b/recipes/wip/image/editors/inkscape/recipe.toml index 8c102dbe1..b183070fb 100644 --- a/recipes/wip/image/editors/inkscape/recipe.toml +++ b/recipes/wip/image/editors/inkscape/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix libgc dep #TODO discover minimum dependencies from cmake log # build instructions: https://inkscape.org/develop/getting-started/#compile # build options: https://gitlab.com/inkscape/inkscape/-/blob/master/CMakeLists.txt?ref_type=heads#L87 @@ -21,7 +21,7 @@ cmakeflags = [ "-DWITH_GSOURCEVIEW=OFF", "-DWITH_NLS=OFF", ] -# dependencies = [ +dependencies = [ # "boost", # "glib", # "glibmm", @@ -31,17 +31,17 @@ cmakeflags = [ # "gtksourceview", # "cairo", # "cairomm", -# "pango", + "pango", # "pangomm", # "readline", -# "fontconfig", + "fontconfig", # "freetype2", # "imagemagick", # "potrace", # "zlib", # "lib2geom", # "atkmm", -# "harfbuzz", + "harfbuzz", # "libblas", # "libsoup", # "libsigc++", @@ -53,9 +53,10 @@ cmakeflags = [ # "libxml2", # "libxslt", # "libcdr", -# "libgsl", + "libgsl", + "libgc", # "libgspell-gtk3", # "libjpeg", -# "liblcms", + "liblcms", # "liblapack", -# ] + ] diff --git a/recipes/wip/image/editors/photo-editor-rs/recipe.toml b/recipes/wip/image/editors/photo-editor-rs/recipe.toml index 13c24b2a2..e653ada29 100644 --- a/recipes/wip/image/editors/photo-editor-rs/recipe.toml +++ b/recipes/wip/image/editors/photo-editor-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://codeberg.org/oscfri/photo-editor" shallow_clone = true diff --git a/recipes/wip/image/editors/svguru/recipe.toml b/recipes/wip/image/editors/svguru/recipe.toml index 7af000aaa..5276e155d 100644 --- a/recipes/wip/image/editors/svguru/recipe.toml +++ b/recipes/wip/image/editors/svguru/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO glutin crate error [source] git = "https://github.com/4383/svguru" shallow_clone = true diff --git a/recipes/wip/image/editors/watermarker/recipe.toml b/recipes/wip/image/editors/watermarker/recipe.toml index fcfd2ab74..28a3d62ec 100644 --- a/recipes/wip/image/editors/watermarker/recipe.toml +++ b/recipes/wip/image/editors/watermarker/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/xomvio/watermarker" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/image/upscaling/rscale2x/recipe.toml b/recipes/wip/image/upscaling/rscale2x/recipe.toml index 769df6d50..061c9b6bf 100644 --- a/recipes/wip/image/upscaling/rscale2x/recipe.toml +++ b/recipes/wip/image/upscaling/rscale2x/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested (after cargo update) [source] git = "https://github.com/ahmetmutlugun/rscale2x" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/image/upscaling/upscaler-rs/recipe.toml b/recipes/wip/image/upscaling/upscaler-rs/recipe.toml index ecb4e7aa5..0b771833b 100644 --- a/recipes/wip/image/upscaling/upscaler-rs/recipe.toml +++ b/recipes/wip/image/upscaling/upscaler-rs/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested (after cargo update) [source] git = "https://github.com/DhruvDh/upscaler" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/image/upscaling/upscayl-ncnn/recipe.toml b/recipes/wip/image/upscaling/upscayl-ncnn/recipe.toml index 1955bff3d..5a3744698 100644 --- a/recipes/wip/image/upscaling/upscayl-ncnn/recipe.toml +++ b/recipes/wip/image/upscaling/upscayl-ncnn/recipe.toml @@ -10,7 +10,6 @@ dependencies = [ "openmp", ] script = """ -COOKBOOK_SOURCE="${COOKBOOK_SOURCE}/src" DYNAMIC_INIT -cookbook_cmake +cookbook_cmake "${COOKBOOK_SOURCE}"/src """ diff --git a/recipes/wip/image/upscaling/video2x/recipe.toml b/recipes/wip/image/upscaling/video2x/recipe.toml index a591bee56..4f4a5b8d9 100644 --- a/recipes/wip/image/upscaling/video2x/recipe.toml +++ b/recipes/wip/image/upscaling/video2x/recipe.toml @@ -1,6 +1,7 @@ #TODO maybe incomplete script [source] git = "https://github.com/k4yt3x/video2x" +shallow_clone = true [build] template = "custom" script = """ diff --git a/recipes/wip/image/viewers/sdl-img/recipe.toml b/recipes/wip/image/viewers/sdl-img/recipe.toml index 88c26b957..cc704cae4 100644 --- a/recipes/wip/image/viewers/sdl-img/recipe.toml +++ b/recipes/wip/image/viewers/sdl-img/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't find SDL.h [source] git = "https://github.com/rswinkle/sdl_img" rev = "0.101.0" @@ -7,6 +7,7 @@ shallow_clone = true template = "custom" dependencies = [ "sdl2", + "curl", ] script = """ rsync -av --delete "${COOKBOOK_SOURCE}/" ./ diff --git a/recipes/wip/image/viewers/svgtail/recipe.toml b/recipes/wip/image/viewers/svgtail/recipe.toml index 0fc6b8acd..b9bf57434 100644 --- a/recipes/wip/image/viewers/svgtail/recipe.toml +++ b/recipes/wip/image/viewers/svgtail/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO minifb crate error [source] git = "https://github.com/statusfailed/svgtail" shallow_clone = true diff --git a/recipes/wip/libs/other/libfuse2/recipe.toml b/recipes/wip/libs/fs/libfuse2/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libfuse2/recipe.toml rename to recipes/wip/libs/fs/libfuse2/recipe.toml diff --git a/recipes/wip/libs/other/libfuse3/recipe.toml b/recipes/wip/libs/fs/libfuse3/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libfuse3/recipe.toml rename to recipes/wip/libs/fs/libfuse3/recipe.toml diff --git a/recipes/wip/libs/fs/physicsfs/recipe.toml b/recipes/wip/libs/fs/physicsfs/recipe.toml index ff7cca8f6..97055e162 100644 --- a/recipes/wip/libs/fs/physicsfs/recipe.toml +++ b/recipes/wip/libs/fs/physicsfs/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested # build instructions: https://github.com/icculus/physfs/blob/main/docs/INSTALL.txt [source] git = "https://github.com/icculus/physfs" diff --git a/recipes/wip/libs/gnome/gegl/recipe.toml b/recipes/wip/libs/gnome/gegl/recipe.toml index a0b36c722..0df9c929c 100644 --- a/recipes/wip/libs/gnome/gegl/recipe.toml +++ b/recipes/wip/libs/gnome/gegl/recipe.toml @@ -1,16 +1,32 @@ #TODO not compiled or tested # build instructions: https://gitlab.gnome.org/GNOME/gegl/-/blob/master/docs/development.adoc?ref_type=heads#user-content-debugging [source] -tar = "https://download.gimp.org/pub/gegl/0.4/gegl-0.4.46.tar.xz" +tar = "https://download.gimp.org/pub/gegl/0.4/gegl-0.4.72.tar.xz" +patches = [ + "redox.patch" +] + [build] -template = "meson" +template = "custom" mesonflags = [ "-Ddocs=false", - "-Dgi-docgen=false", + "-Dgtk-doc=false", "-Dintrospection=false", "-Dparallel-tests=false", ] dependencies = [ + "cairo", "libpng", "glib", + "pango", + "babl", + "json-glib", + "libjpeg", + "libnsgif", + "poly2tri-c", ] +script = """ +DYNAMIC_INIT +CFLAGS="-std=c11" +cookbook_meson +""" diff --git a/recipes/wip/libs/gnome/gegl/redox.patch b/recipes/wip/libs/gnome/gegl/redox.patch new file mode 100644 index 000000000..58d5150c3 --- /dev/null +++ b/recipes/wip/libs/gnome/gegl/redox.patch @@ -0,0 +1,44 @@ +diff -ruwN source/meson.build source-new/meson.build +--- source/meson.build 2026-09-07 02:51:56.000000000 +0000 ++++ source-new/meson.build 2026-10-08 04:30:15.334232657 +0000 +@@ -696,40 +696,8 @@ + subdir('bin') + subdir('tools') + subdir('operations') +-subdir('examples') +-subdir('tests') + subdir('perf') + subdir('po') +-subdir('docs') +- +- +-if host_machine.system() != 'emscripten' +- nm = find_program('nm', required: false) +- +- # Verify .def files for Windows linking (and for macOS too when -Wl,-exported_symbols_list is used). +- # We check this on non-Windows/non-macOS platform (Debian) on CI, and on Windows and macOS itself. +- # (This also checks if .gir files have parity with the library so parity with .def files too) +- custom_target('check-def-files', +- input: [ +- gegl_def, +- g_ir.found() ? gegl_gir : [], +- gegl_npd_def, +- gegl_sc_def, +- ], +- depends: [ +- gegl_lib, +- gegl_npd_lib, +- seamlessclone_lib +- ], +- env: nm.found() ? { 'NM': nm.full_path() } : {}, +- output: [ 'check-def-files', ], +- command: [ +- python, meson.project_source_root() / 'tools' / 'defcheck.py', '@INPUT@', +- ], +- build_by_default: true, +- ) +-endif +- + + if w3m.found() + # Create NEWS file from html file diff --git a/recipes/wip/libs/gnome/gexiv2/recipe.toml b/recipes/wip/libs/gnome/gexiv2/recipe.toml index f62f8489c..799b237f2 100644 --- a/recipes/wip/libs/gnome/gexiv2/recipe.toml +++ b/recipes/wip/libs/gnome/gexiv2/recipe.toml @@ -5,8 +5,11 @@ tar = "https://download.gnome.org/sources/gexiv2/0.14/gexiv2-0.14.2.tar.xz" [build] template = "meson" mesonflags = [ - "-Dintrospection=false" + "-Dintrospection=false", + "-Dvapi=false", + "-Dpython3=false", ] dependencies = [ - "exiv2" + "exiv2", + "glib", ] diff --git a/recipes/wip/libs/gnome/gobject-introspection/recipe.toml b/recipes/wip/libs/gnome/gobject-introspection/recipe.toml index 3b1a74738..9e543246a 100644 --- a/recipes/wip/libs/gnome/gobject-introspection/recipe.toml +++ b/recipes/wip/libs/gnome/gobject-introspection/recipe.toml @@ -1,3 +1,4 @@ +#TODO build assertion error [source] tar = "https://download.gnome.org/sources/gobject-introspection/1.84/gobject-introspection-1.84.0.tar.xz" blake3 = "e01a810629b11b2fa415ba47d2df3ba521286e9933f6c2b364e959c26401eb96" diff --git a/recipes/wip/libs/other/freealut/recipe.toml b/recipes/wip/libs/graphics/freealut/recipe.toml similarity index 100% rename from recipes/wip/libs/other/freealut/recipe.toml rename to recipes/wip/libs/graphics/freealut/recipe.toml diff --git a/recipes/wip/libs/other/freeglut/recipe.toml b/recipes/wip/libs/graphics/freeglut/recipe.toml similarity index 100% rename from recipes/wip/libs/other/freeglut/recipe.toml rename to recipes/wip/libs/graphics/freeglut/recipe.toml diff --git a/recipes/wip/libs/other/freeglut/redox.patch b/recipes/wip/libs/graphics/freeglut/redox.patch similarity index 100% rename from recipes/wip/libs/other/freeglut/redox.patch rename to recipes/wip/libs/graphics/freeglut/redox.patch diff --git a/recipes/wip/libs/other/glew/recipe.toml b/recipes/wip/libs/graphics/glew/recipe.toml similarity index 100% rename from recipes/wip/libs/other/glew/recipe.toml rename to recipes/wip/libs/graphics/glew/recipe.toml diff --git a/recipes/wip/libs/other/glfw3/recipe.toml b/recipes/wip/libs/graphics/glfw3/recipe.toml similarity index 74% rename from recipes/wip/libs/other/glfw3/recipe.toml rename to recipes/wip/libs/graphics/glfw3/recipe.toml index a54244977..d1cf720c3 100644 --- a/recipes/wip/libs/other/glfw3/recipe.toml +++ b/recipes/wip/libs/graphics/glfw3/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested # build instructions: https://www.glfw.org/docs/latest/compile.html [source] git = "https://github.com/glfw/glfw" @@ -13,4 +13,9 @@ cmakeflags = [ ] dependencies = [ "libxkbcommon", + "libx11", + "libxrandr", + "libxinerama", + "libxcursor", + "libxi", ] diff --git a/recipes/wip/libs/other/libglvnd/recipe.toml b/recipes/wip/libs/graphics/libglvnd/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libglvnd/recipe.toml rename to recipes/wip/libs/graphics/libglvnd/recipe.toml diff --git a/recipes/wip/libs/other/oidn/recipe.toml b/recipes/wip/libs/graphics/oidn/recipe.toml similarity index 100% rename from recipes/wip/libs/other/oidn/recipe.toml rename to recipes/wip/libs/graphics/oidn/recipe.toml diff --git a/recipes/wip/libs/other/openxr/recipe.toml b/recipes/wip/libs/graphics/openxr/recipe.toml similarity index 100% rename from recipes/wip/libs/other/openxr/recipe.toml rename to recipes/wip/libs/graphics/openxr/recipe.toml diff --git a/recipes/wip/libs/other/projectm/recipe.toml b/recipes/wip/libs/graphics/projectm/recipe.toml similarity index 100% rename from recipes/wip/libs/other/projectm/recipe.toml rename to recipes/wip/libs/graphics/projectm/recipe.toml diff --git a/recipes/wip/libs/other/slang/recipe.toml b/recipes/wip/libs/graphics/slang/recipe.toml similarity index 100% rename from recipes/wip/libs/other/slang/recipe.toml rename to recipes/wip/libs/graphics/slang/recipe.toml diff --git a/recipes/wip/libs/other/imlib2/recipe.toml b/recipes/wip/libs/gui/imlib2/recipe.toml similarity index 100% rename from recipes/wip/libs/other/imlib2/recipe.toml rename to recipes/wip/libs/gui/imlib2/recipe.toml diff --git a/recipes/wip/libs/other/imlib2/redox.patch b/recipes/wip/libs/gui/imlib2/redox.patch similarity index 100% rename from recipes/wip/libs/other/imlib2/redox.patch rename to recipes/wip/libs/gui/imlib2/redox.patch diff --git a/recipes/wip/libs/other/wxpython/recipe.toml b/recipes/wip/libs/gui/wxpython/recipe.toml similarity index 100% rename from recipes/wip/libs/other/wxpython/recipe.toml rename to recipes/wip/libs/gui/wxpython/recipe.toml diff --git a/recipes/wip/libs/other/wxwidgets-gtk3/recipe.toml b/recipes/wip/libs/gui/wxwidgets-gtk3/recipe.toml similarity index 86% rename from recipes/wip/libs/other/wxwidgets-gtk3/recipe.toml rename to recipes/wip/libs/gui/wxwidgets-gtk3/recipe.toml index 710c98871..988537d12 100644 --- a/recipes/wip/libs/other/wxwidgets-gtk3/recipe.toml +++ b/recipes/wip/libs/gui/wxwidgets-gtk3/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO unrecognized options: --disable-static # build instructions: https://github.com/wxWidgets/wxWidgets/blob/master/docs/gtk/install.md [source] tar = "https://github.com/wxWidgets/wxWidgets/releases/download/v3.2.4/wxWidgets-3.2.4.tar.bz2" diff --git a/recipes/wip/libs/info/appstream/recipe.toml b/recipes/wip/libs/info/appstream/recipe.toml new file mode 100644 index 000000000..67e508c3d --- /dev/null +++ b/recipes/wip/libs/info/appstream/recipe.toml @@ -0,0 +1,30 @@ +#TODO compiled but not tested +[source] +tar = "https://www.freedesktop.org/software/appstream/releases/AppStream-1.1.2.tar.xz" +script = """ +mv AppStream-1.1.2/{*,.*} . +rmdir AppStream-1.1.2 +""" +patches = [ + "redox.patch" +] + +[build] +template = "meson" +mesonflags = [ + "-Dsystemd=false", + "-Dgir=false", + "-Dman=false", +] +dependencies = [ + "glib", + "libxml2", + "curl", + "libfyaml", + "libxmlb", + "libstemmer", + "bash-completion" +] +dev-dependencies = [ + "host:gperf" +] \ No newline at end of file diff --git a/recipes/wip/libs/info/appstream/redox.patch b/recipes/wip/libs/info/appstream/redox.patch new file mode 100644 index 000000000..af8b1654a --- /dev/null +++ b/recipes/wip/libs/info/appstream/redox.patch @@ -0,0 +1,87 @@ +diff -ruwN source/AppStream-1.1.2/data/meson.build source-new/AppStream-1.1.2/data/meson.build +--- source/AppStream-1.1.2/data/meson.build 2026-01-28 20:15:58.000000000 +0000 ++++ source-new/AppStream-1.1.2/data/meson.build 2026-10-08 06:16:45.427081991 +0000 +@@ -7,52 +7,6 @@ + install_data('its/metainfo.loc', + install_dir: join_paths(get_option('datadir'), 'gettext', 'its')) + +-# Do not rely on an exe wrapper for rel-info, use the system one in that case +-if meson.is_cross_build() +- dependency('appstream', version: '>=' + as_version, native: true, +- not_found_message: 'Native appstream required for cross-building') +- ascli_exe = find_program('appstreamcli', native: true) +-endif +- +-# NOTE: We do not translate the release notes on purpose here. +-# If you do want to give translators a chance to translate them, +-# ascli news-to-metainfo needs to produce a temporary file to translate +-# prior to running (x)gettext on the file. +-metainfo_with_relinfo = custom_target('gen-output', +- input : ['../NEWS', 'org.freedesktop.appstream.cli.metainfo.xml'], +- output : ['nol10n_withrelinfo_org.freedesktop.appstream.cli.metainfo.xml'], +- command : [ascli_exe, 'news-to-metainfo', '--limit=6', '@INPUT0@', '@INPUT1@', '@OUTPUT@'] +-) +- +-metainfo_i18n = i18n.itstool_join( +- input: metainfo_with_relinfo, +- output: 'org.freedesktop.appstream.cli.metainfo.xml', +- mo_targets: i18n_result[0], +- its_files: [join_paths(meson.current_source_dir(), 'its', 'metainfo.its')], +- install: true, +- install_dir: metainfo_dir, +-) +- +-test('as-validate_metainfo.cli', +- ascli_exe, +- args: ['validate', +- '--pedantic', +- '--no-net', +- metainfo_i18n] +-) +- + # install appstream.conf default template + install_data('appstream.conf', + install_dir: as_data_installdir) +- +-if get_option('compose') +- ascompose_metainfo = 'org.freedesktop.appstream.compose.metainfo.xml' +- test('as-validate_metainfo.compose', +- ascli_exe, +- args: ['validate', +- '--pedantic', +- '--no-net', +- join_paths(meson.current_source_dir(), ascompose_metainfo)] +- ) +- install_data(ascompose_metainfo, install_dir: metainfo_dir) +-endif +diff -ruwN source/AppStream-1.1.2/meson.build source-new/AppStream-1.1.2/meson.build +--- source/AppStream-1.1.2/meson.build 2026-01-28 20:15:58.000000000 +0000 ++++ source-new/AppStream-1.1.2/meson.build 2026-10-08 06:22:27.470986289 +0000 +@@ -193,15 +193,10 @@ + stemmer_inc_dirs = include_directories() + if get_option('stemming') + stemmer_lib = cc.find_library('stemmer', required: true) +- stemmer_inc_dirs = include_directories(['/usr/include']) + if not cc.has_header('libstemmer.h') +- if cc.has_header('libstemmer/libstemmer.h') +- stemmer_inc_dirs = include_directories('/usr/include/libstemmer') +- else + error('Unable to find Snowball header "libstemmer.h". Please ensure libstemmer/Snowball is installed properly in order to continue.') + endif + endif +-endif + + # use gperf for faster string -> enum matching + gperf = find_program('gperf') +diff -ruwN source/AppStream-1.1.2/src/as-system-info.c source-new/AppStream-1.1.2/src/as-system-info.c +--- source/AppStream-1.1.2/src/as-system-info.c 2026-01-28 20:15:58.000000000 +0000 ++++ source-new/AppStream-1.1.2/src/as-system-info.c 2026-10-08 06:23:01.354958074 +0000 +@@ -513,7 +513,7 @@ + return 0; + } + return hbi.memory_size / MB_IN_BYTES; +-#elif defined(__sun) ++#elif defined(__sun) || defined(__redox__) + long physpages = sysconf (_SC_PHYS_PAGES); + long pagesize = sysconf (_SC_PAGESIZE); + if (physpages > 0 && pagesize > 0) diff --git a/recipes/wip/libs/other/fftw/recipe.toml b/recipes/wip/libs/math/fftw/recipe.toml similarity index 100% rename from recipes/wip/libs/other/fftw/recipe.toml rename to recipes/wip/libs/math/fftw/recipe.toml diff --git a/recipes/wip/libs/media/exiv2/recipe.toml b/recipes/wip/libs/media/exiv2/recipe.toml index b60246de4..c89c746ce 100644 --- a/recipes/wip/libs/media/exiv2/recipe.toml +++ b/recipes/wip/libs/media/exiv2/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] git = "https://github.com/Exiv2/exiv2" rev = "v0.28.8" @@ -13,4 +13,5 @@ cmakeflags = [ dependencies = [ "zlib", "libiconv", + "inih", ] diff --git a/recipes/wip/libs/other/lame/recipe.toml b/recipes/wip/libs/media/lame/recipe.toml similarity index 100% rename from recipes/wip/libs/other/lame/recipe.toml rename to recipes/wip/libs/media/lame/recipe.toml diff --git a/recipes/wip/libs/other/liba52/recipe.toml b/recipes/wip/libs/media/liba52/recipe.toml similarity index 100% rename from recipes/wip/libs/other/liba52/recipe.toml rename to recipes/wip/libs/media/liba52/recipe.toml diff --git a/recipes/wip/libs/other/libaom/recipe.toml b/recipes/wip/libs/media/libaom/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libaom/recipe.toml rename to recipes/wip/libs/media/libaom/recipe.toml diff --git a/recipes/wip/libs/other/libde265/recipe.toml b/recipes/wip/libs/media/libde265/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libde265/recipe.toml rename to recipes/wip/libs/media/libde265/recipe.toml diff --git a/recipes/wip/libs/media/libfdk-aac/recipe.toml b/recipes/wip/libs/media/libfdk-aac/recipe.toml index 514cb83e2..379c4c5dd 100644 --- a/recipes/wip/libs/media/libfdk-aac/recipe.toml +++ b/recipes/wip/libs/media/libfdk-aac/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO promote [source] git = "https://github.com/mstorsjo/fdk-aac" rev = "v2.0.3" diff --git a/recipes/wip/libs/other/libgav1/recipe.toml b/recipes/wip/libs/media/libgav1/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libgav1/recipe.toml rename to recipes/wip/libs/media/libgav1/recipe.toml diff --git a/recipes/wip/libs/other/libmad/recipe.toml b/recipes/wip/libs/media/libmad/recipe.toml similarity index 68% rename from recipes/wip/libs/other/libmad/recipe.toml rename to recipes/wip/libs/media/libmad/recipe.toml index 2912e2f46..5e95edb84 100644 --- a/recipes/wip/libs/other/libmad/recipe.toml +++ b/recipes/wip/libs/media/libmad/recipe.toml @@ -1,4 +1,4 @@ -#TODO the redox target is not supported on the configure script +#TODO can't recognize redox [source] tar = "https://sourceforge.net/projects/mad/files/libmad/0.15.1b/libmad-0.15.1b.tar.gz/download" [build] diff --git a/recipes/wip/libs/other/libmpeg2/recipe.toml b/recipes/wip/libs/media/libmpeg2/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libmpeg2/recipe.toml rename to recipes/wip/libs/media/libmpeg2/recipe.toml diff --git a/recipes/wip/libs/media/libnsgif/recipe.toml b/recipes/wip/libs/media/libnsgif/recipe.toml new file mode 100644 index 000000000..2ba4cc019 --- /dev/null +++ b/recipes/wip/libs/media/libnsgif/recipe.toml @@ -0,0 +1,22 @@ +[source] +tar = "https://download.netsurf-browser.org/libs/releases/libnsgif-1.0.0-src.tar.gz" + +[build] +template = "custom" +dev-dependencies = [ + "netsurf-buildsystem" +] +script = """ +DYNAMIC_INIT + +# Netsurf does not currently support out-of-tree builds :( +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ + +# netsurf mixes up CFLAGS for host and build +export CC="${CC} ${CPPFLAGS}" +export NSSHARED=${COOKBOOK_SYSROOT}/usr/share/netsurf-buildsystem +export PREFIX=/usr +export COMPONENT_TYPE=lib-shared +"$COOKBOOK_MAKE" V=1 -j"$COOKBOOK_MAKE_JOBS" +"$COOKBOOK_MAKE" DESTDIR="$COOKBOOK_STAGE" install -j"$COOKBOOK_MAKE_JOBS" +""" diff --git a/recipes/wip/libs/other/libportaudio/recipe.toml b/recipes/wip/libs/media/libportaudio/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libportaudio/recipe.toml rename to recipes/wip/libs/media/libportaudio/recipe.toml diff --git a/recipes/wip/libs/other/libsamplerate/recipe.toml b/recipes/wip/libs/media/libsamplerate/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libsamplerate/recipe.toml rename to recipes/wip/libs/media/libsamplerate/recipe.toml diff --git a/recipes/wip/libs/other/libsndfile/recipe.toml b/recipes/wip/libs/media/libsndfile/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libsndfile/recipe.toml rename to recipes/wip/libs/media/libsndfile/recipe.toml diff --git a/recipes/wip/libs/other/libsoundio/recipe.toml b/recipes/wip/libs/media/libsoundio/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libsoundio/recipe.toml rename to recipes/wip/libs/media/libsoundio/recipe.toml diff --git a/recipes/wip/libs/other/libtheora/recipe.toml b/recipes/wip/libs/media/libtheora/recipe.toml similarity index 75% rename from recipes/wip/libs/other/libtheora/recipe.toml rename to recipes/wip/libs/media/libtheora/recipe.toml index a19e3d204..a5668c5c2 100644 --- a/recipes/wip/libs/other/libtheora/recipe.toml +++ b/recipes/wip/libs/media/libtheora/recipe.toml @@ -1,7 +1,4 @@ #TODO: promote -[package] -description = "Reference-implementation library for Ogg Theora video compression format" - [source] tar = "http://downloads.xiph.org/releases/theora/libtheora-1.2.0.tar.gz" blake3 = "b2413d6a29669063c30679eb46e09bd55b47d51e1516282bd1f5a752a8ecae91" diff --git a/recipes/wip/libs/other/libwmf/recipe.toml b/recipes/wip/libs/media/libwmf/recipe.toml similarity index 100% rename from recipes/wip/libs/other/libwmf/recipe.toml rename to recipes/wip/libs/media/libwmf/recipe.toml diff --git a/recipes/wip/libs/other/mlt/recipe.toml b/recipes/wip/libs/media/mlt/recipe.toml similarity index 100% rename from recipes/wip/libs/other/mlt/recipe.toml rename to recipes/wip/libs/media/mlt/recipe.toml diff --git a/recipes/wip/libs/other/musepack/recipe.toml b/recipes/wip/libs/media/musepack/recipe.toml similarity index 100% rename from recipes/wip/libs/other/musepack/recipe.toml rename to recipes/wip/libs/media/musepack/recipe.toml diff --git a/recipes/wip/libs/other/opencolorio/recipe.toml b/recipes/wip/libs/media/opencolorio/recipe.toml similarity index 100% rename from recipes/wip/libs/other/opencolorio/recipe.toml rename to recipes/wip/libs/media/opencolorio/recipe.toml diff --git a/recipes/wip/libs/other/opencv4/recipe.toml b/recipes/wip/libs/media/opencv4/recipe.toml similarity index 60% rename from recipes/wip/libs/other/opencv4/recipe.toml rename to recipes/wip/libs/media/opencv4/recipe.toml index ec61c8d46..6af5bf372 100644 --- a/recipes/wip/libs/other/opencv4/recipe.toml +++ b/recipes/wip/libs/media/opencv4/recipe.toml @@ -1,5 +1,4 @@ -#TODO not compiled or tested -#TODO determine if bundled dependencies need patches, if they need, use recipes +#TODO need "#import " [source] git = "https://github.com/opencv/opencv" branch = "4.x" diff --git a/recipes/wip/libs/other/openexr/recipe.toml b/recipes/wip/libs/media/openexr/recipe.toml similarity index 100% rename from recipes/wip/libs/other/openexr/recipe.toml rename to recipes/wip/libs/media/openexr/recipe.toml diff --git a/recipes/wip/libs/other/openimageio/recipe.toml b/recipes/wip/libs/media/openimageio/recipe.toml similarity index 89% rename from recipes/wip/libs/other/openimageio/recipe.toml rename to recipes/wip/libs/media/openimageio/recipe.toml index c27be8618..c5bacd8bd 100644 --- a/recipes/wip/libs/other/openimageio/recipe.toml +++ b/recipes/wip/libs/media/openimageio/recipe.toml @@ -1,6 +1,5 @@ -#TODO not compiled or tested +#TODO can't find python3 # build instructions: https://github.com/AcademySoftwareFoundation/OpenImageIO/blob/master/INSTALL.md#building-openimageio-on-linux-or-os-x -# the dependencies are optional [source] tar = "https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/download/v3.1.11.0/OpenImageIO-3.1.11.0.tar.gz" [build] @@ -14,7 +13,9 @@ dependencies = [ "libtiff", "libjpeg", "openexr", - "opencolorio", + "zlib", + "python312", + #"opencolorio", "libfmt", #"libpng", #"boost", diff --git a/recipes/wip/libs/other/openjpeg/recipe.toml b/recipes/wip/libs/media/openjpeg/recipe.toml similarity index 100% rename from recipes/wip/libs/other/openjpeg/recipe.toml rename to recipes/wip/libs/media/openjpeg/recipe.toml diff --git a/recipes/wip/libs/other/rnnoise/recipe.toml b/recipes/wip/libs/media/rnnoise/recipe.toml similarity index 100% rename from recipes/wip/libs/other/rnnoise/recipe.toml rename to recipes/wip/libs/media/rnnoise/recipe.toml diff --git a/recipes/wip/libs/other/rubberband/recipe.toml b/recipes/wip/libs/media/rubberband/recipe.toml similarity index 100% rename from recipes/wip/libs/other/rubberband/recipe.toml rename to recipes/wip/libs/media/rubberband/recipe.toml diff --git a/recipes/wip/libs/other/taglib/recipe.toml b/recipes/wip/libs/media/taglib/recipe.toml similarity index 100% rename from recipes/wip/libs/other/taglib/recipe.toml rename to recipes/wip/libs/media/taglib/recipe.toml diff --git a/recipes/wip/libs/other/twolame/recipe.toml b/recipes/wip/libs/media/twolame/recipe.toml similarity index 100% rename from recipes/wip/libs/other/twolame/recipe.toml rename to recipes/wip/libs/media/twolame/recipe.toml diff --git a/recipes/wip/libs/other/vamp-plugin-sdk/recipe.toml b/recipes/wip/libs/media/vamp-plugin-sdk/recipe.toml similarity index 100% rename from recipes/wip/libs/other/vamp-plugin-sdk/recipe.toml rename to recipes/wip/libs/media/vamp-plugin-sdk/recipe.toml diff --git a/recipes/wip/libs/other/appstream/recipe.toml b/recipes/wip/libs/other/appstream/recipe.toml deleted file mode 100644 index 3941eb70a..000000000 --- a/recipes/wip/libs/other/appstream/recipe.toml +++ /dev/null @@ -1,17 +0,0 @@ -#TODO not compiled or tested -# build instructions: https://github.com/ximion/appstream#build--install -#TODO missing dependencies -[source] -tar = "https://www.freedesktop.org/software/appstream/releases/AppStream-1.1.2.tar.xz" -[build] -template = "meson" -mesonflags = [ - "-Dsystemd=false", - "-Dgir=false", - "-Dman=off", -] -dependencies = [ - "glib", - "libxml2", - "curl", -] diff --git a/recipes/wip/libs/other/babl/recipe.toml b/recipes/wip/libs/other/babl/recipe.toml index 39154ba61..0af789cc4 100644 --- a/recipes/wip/libs/other/babl/recipe.toml +++ b/recipes/wip/libs/other/babl/recipe.toml @@ -1,12 +1,15 @@ -#TODO not compiled or tested -# build instructions: https://gitlab.gnome.org/GNOME/babl/-/blob/master/INSTALL.in?ref_type=heads +#TODO compiled but not tested [source] tar = "https://download.gimp.org/pub/babl/0.1/babl-0.1.124.tar.xz" +blake3 = "30ef72ccc64771f876b4e42e0d5d05f8561fd6bb4baf225ad498056b1e896f92" +patches = [ + "redox.patch" +] [build] template = "meson" mesonflags = [ "-Dwith-docs=false", "-Denable-gir=false", "-Denable-vapi=false", - "-Dgi-docgen=false", + "-Dgi-docgen=disabled", ] diff --git a/recipes/wip/libs/other/babl/redox.patch b/recipes/wip/libs/other/babl/redox.patch new file mode 100644 index 000000000..687b3c624 --- /dev/null +++ b/recipes/wip/libs/other/babl/redox.patch @@ -0,0 +1,44 @@ +diff -ruwN source/babl/babl-conversion.c source-new/babl/babl-conversion.c +--- source/babl/babl-conversion.c 2026-03-10 15:56:45.000000000 +0000 ++++ source-new/babl/babl-conversion.c 2026-10-08 02:54:11.064600969 +0000 +@@ -18,6 +18,7 @@ + + + #include "config.h" ++#include + #include + #include + #include +diff -ruwN source/babl/babl-fish-path.c source-new/babl/babl-fish-path.c +--- source/babl/babl-fish-path.c 2026-03-10 15:56:45.000000000 +0000 ++++ source-new/babl/babl-fish-path.c 2026-10-08 02:54:11.064600969 +0000 +@@ -18,6 +18,7 @@ + + #include "config.h" + #include ++#include + #ifdef _WIN32 + #include + #endif +diff -ruwN source/babl/babl-polynomial.c source-new/babl/babl-polynomial.c +--- source/babl/babl-polynomial.c 2026-03-10 15:56:45.000000000 +0000 ++++ source-new/babl/babl-polynomial.c 2026-10-08 02:54:11.064600969 +0000 +@@ -51,6 +51,7 @@ + + #include "config.h" + #include ++#include + #include + #ifdef _WIN32 + #include +diff -ruwN source/extensions/sse2-float.c source-new/extensions/sse2-float.c +--- source/extensions/sse2-float.c 2026-03-10 15:56:45.000000000 +0000 ++++ source-new/extensions/sse2-float.c 2026-10-08 02:54:11.064600969 +0000 +@@ -25,6 +25,7 @@ + /* SSE 2 */ + #include + ++#include + #include + #include + diff --git a/recipes/wip/libs/other/gpgme/recipe.toml b/recipes/wip/libs/other/gpgme/recipe.toml index acf6e5959..7f96ed3b2 100644 --- a/recipes/wip/libs/other/gpgme/recipe.toml +++ b/recipes/wip/libs/other/gpgme/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO can't find libgpg-error from libgcrypt dep [source] tar = "https://gnupg.org/ftp/gcrypt/gpgme/gpgme-1.20.0.tar.bz2" [build] diff --git a/recipes/wip/libs/other/libfyaml/recipe.toml b/recipes/wip/libs/other/libfyaml/recipe.toml new file mode 100644 index 000000000..c22b729fc --- /dev/null +++ b/recipes/wip/libs/other/libfyaml/recipe.toml @@ -0,0 +1,9 @@ + +[source] +tar = "https://github.com/pantoniou/libfyaml/releases/download/v0.9.6/libfyaml-0.9.6.tar.gz" +patches = [ + "redox.patch" +] + +[build] +template = "cmake" diff --git a/recipes/wip/libs/other/libfyaml/redox.patch b/recipes/wip/libs/other/libfyaml/redox.patch new file mode 100644 index 000000000..3f91626ae --- /dev/null +++ b/recipes/wip/libs/other/libfyaml/redox.patch @@ -0,0 +1,35 @@ +diff -ruwN source/CMakeLists.txt source-new/CMakeLists.txt +--- source/CMakeLists.txt 2026-03-15 13:48:50.000000000 +0000 ++++ source-new/CMakeLists.txt 2026-10-08 05:58:36.546675313 +0000 +@@ -686,6 +686,7 @@ + set(COMMON_C_DEFINITIONS WIN32_LEAN_AND_MEAN _CRT_SECURE_NO_WARNINGS) + else() + set(COMMON_C_DEFINITIONS _GNU_SOURCE) ++ set(COMMON_C_DEFINITIONS HAVE_ALLOCA_H) + endif() + + # MSVC requires C11 for stdatomic.h +diff -ruwN source/include/libfyaml/libfyaml-endian.h source-new/include/libfyaml/libfyaml-endian.h +--- source/include/libfyaml/libfyaml-endian.h 2026-03-15 13:48:50.000000000 +0000 ++++ source-new/include/libfyaml/libfyaml-endian.h 2026-10-08 05:53:56.988388856 +0000 +@@ -42,7 +42,7 @@ + extern "C" { + #endif + +-#if defined(__linux__) || defined(__CYGWIN__) || defined(__OpenBSD__) || defined(__GNU__) || defined(__EMSCRIPTEN__) ++#if defined(__linux__) || defined(__CYGWIN__) || defined(__OpenBSD__) || defined(__GNU__) || defined(__redox__) || defined(__EMSCRIPTEN__) + # include + #elif defined(__APPLE__) + # include +diff -ruwN source/src/util/fy-utils.c source-new/src/util/fy-utils.c +--- source/src/util/fy-utils.c 2026-03-15 13:48:50.000000000 +0000 ++++ source-new/src/util/fy-utils.c 2026-10-08 06:03:33.209958279 +0000 +@@ -960,7 +960,7 @@ + if (!fyms) + return NULL; + memset(fyms, 0, sizeof(*fyms)); +-#if !defined(_WIN32) ++#if !defined(_WIN32) && !defined(__redox__) + fyms->fp = open_memstream(&fyms->buf, &fyms->size); + #else + fyms->fp = tmpfile(); diff --git a/recipes/wip/libs/other/libglm/recipe.toml b/recipes/wip/libs/other/libglm/recipe.toml index 83f270530..7569eea0a 100644 --- a/recipes/wip/libs/other/libglm/recipe.toml +++ b/recipes/wip/libs/other/libglm/recipe.toml @@ -1,4 +1,4 @@ -#TODO Needs to determine the script +#TODO compiled but untested [source] git = "https://github.com/g-truc/glm" rev = "1.0.3" diff --git a/recipes/wip/libs/other/libgsl/recipe.toml b/recipes/wip/libs/other/libgsl/recipe.toml index 2fdf67a3c..f582f4efd 100644 --- a/recipes/wip/libs/other/libgsl/recipe.toml +++ b/recipes/wip/libs/other/libgsl/recipe.toml @@ -1,5 +1,6 @@ -#TODO can't recognize Redox target +#TODO compiled but untested [source] tar = "https://ftp.gnu.org/gnu/gsl/gsl-2.7.1.tar.gz" +script = "GNU_CONFIG_GET config.sub" [build] template = "configure" diff --git a/recipes/wip/libs/other/libicu/recipe.toml b/recipes/wip/libs/other/libicu/recipe.toml index 5cef02e38..e4e2dbb92 100644 --- a/recipes/wip/libs/other/libicu/recipe.toml +++ b/recipes/wip/libs/other/libicu/recipe.toml @@ -12,6 +12,7 @@ compiler = "no-lto" template = "custom" script = """ DYNAMIC_INIT +CPPFLAGS+=" -fno-lto" COOKBOOK_CONFIGURE="${COOKBOOK_SOURCE}/source/configure" COOKBOOK_CONFIGURE_FLAGS+=( icu_cv_host_frag=mh-linux diff --git a/recipes/wip/libs/other/libmypaint/recipe.toml b/recipes/wip/libs/other/libmypaint/recipe.toml index 49968016c..3e14a1e6b 100644 --- a/recipes/wip/libs/other/libmypaint/recipe.toml +++ b/recipes/wip/libs/other/libmypaint/recipe.toml @@ -1,9 +1,17 @@ -#TODO probably missing dependencies: https://github.com/mypaint/libmypaint/#dependencies +#TODO compiled but not tested [source] tar = "https://github.com/mypaint/libmypaint/releases/download/v1.6.0/libmypaint-1.6.0.tar.xz" +script = """ +GNU_CONFIG_GET config.sub +""" [build] -template = "configure" +template = "custom" +script = """ +DYNAMIC_INIT +export CPPFLAGS+=" -I${COOKBOOK_SYSROOT}/include/glib-2.0 -I${COOKBOOK_SYSROOT}/lib/glib-2.0/include" +cookbook_configure +""" dependencies = [ "glib", - "gobject-introspection", + "json-c", ] diff --git a/recipes/wip/libs/other/libstemmer/recipe.toml b/recipes/wip/libs/other/libstemmer/recipe.toml new file mode 100644 index 000000000..0ad0ce334 --- /dev/null +++ b/recipes/wip/libs/other/libstemmer/recipe.toml @@ -0,0 +1,16 @@ + +[source] +tar = "https://snowballstem.org/dist/libstemmer_c-3.1.1.tar.gz" + +[build] +template = "custom" +compiler = "no-lto" +script = """ +DYNAMIC_INIT +rsync -a --delete "${COOKBOOK_SOURCE}/" ./ +mkdir -p ${COOKBOOK_STAGE}/usr/bin ${COOKBOOK_STAGE}/usr/lib ${COOKBOOK_STAGE}/usr/include +make CFLAGS="-O2 -fPIC $CPPFLAGS" +cp libstemmer.a ${COOKBOOK_STAGE}/usr/lib +cp stemwords ${COOKBOOK_STAGE}/usr/bin +cp include/* ${COOKBOOK_STAGE}/usr/include +""" diff --git a/recipes/wip/libs/other/libunwind/recipe.toml b/recipes/wip/libs/other/libunwind/recipe.toml index 6ef93f40f..59dfa50d2 100644 --- a/recipes/wip/libs/other/libunwind/recipe.toml +++ b/recipes/wip/libs/other/libunwind/recipe.toml @@ -1,4 +1,4 @@ -#TODO compilation error +#TODO can't find ucontext.h [source] tar = "https://download.savannah.nongnu.org/releases/libunwind/libunwind-1.6.2.tar.gz" [build] diff --git a/recipes/wip/libs/other/libusb/recipe.toml b/recipes/wip/libs/other/libusb/recipe.toml index 3d0f73f6b..40ba76a5a 100644 --- a/recipes/wip/libs/other/libusb/recipe.toml +++ b/recipes/wip/libs/other/libusb/recipe.toml @@ -1,5 +1,6 @@ +# libudev dependency is mandatory since version 1.0.30 #TODO compiled but not tested [source] -tar = "https://github.com/libusb/libusb/releases/download/v1.0.30/libusb-1.0.30.tar.bz2" +tar = "https://github.com/libusb/libusb/releases/download/v1.0.29/libusb-1.0.29.tar.bz2" [build] template = "configure" diff --git a/recipes/wip/libs/other/libxmlb/recipe.toml b/recipes/wip/libs/other/libxmlb/recipe.toml new file mode 100644 index 000000000..5b24aa8d5 --- /dev/null +++ b/recipes/wip/libs/other/libxmlb/recipe.toml @@ -0,0 +1,13 @@ + +[source] +tar = "https://github.com/hughsie/libxmlb/releases/download/0.3.29/libxmlb-0.3.29.tar.xz" + +[build] +template = "meson" +mesonflags = [ + "-Dintrospection=false" +] +dependencies = [ + "glib", + "zstd", +] \ No newline at end of file diff --git a/recipes/wip/libs/other/mypaint-brushes/recipe.toml b/recipes/wip/libs/other/mypaint-brushes/recipe.toml new file mode 100644 index 000000000..ab02060b0 --- /dev/null +++ b/recipes/wip/libs/other/mypaint-brushes/recipe.toml @@ -0,0 +1,6 @@ +#TODO compiled but not tested +[source] +tar = "https://github.com/mypaint/mypaint-brushes/releases/download/v2.0.2/mypaint-brushes-2.0.2.tar.xz" +[build] +template = "configure" + diff --git a/recipes/wip/libs/other/netsurf-buildsystem/recipe.toml b/recipes/wip/libs/other/netsurf-buildsystem/recipe.toml new file mode 100644 index 000000000..a5b9781c4 --- /dev/null +++ b/recipes/wip/libs/other/netsurf-buildsystem/recipe.toml @@ -0,0 +1,11 @@ +[source] +tar = "https://download.netsurf-browser.org/libs/releases/buildsystem-1.10.tar.gz" + +[build] +template = "custom" +script = """ +# Netsurf does not currently support out-of-tree builds :( +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ + +make install PREFIX=/usr DESTDIR="${COOKBOOK_STAGE}" +""" diff --git a/recipes/wip/libs/other/poly2tri-c/recipe.toml b/recipes/wip/libs/other/poly2tri-c/recipe.toml new file mode 100644 index 000000000..7fd078006 --- /dev/null +++ b/recipes/wip/libs/other/poly2tri-c/recipe.toml @@ -0,0 +1,24 @@ +[source] +git = "https://github.com/KyleLink/poly2tri-c" +shallow_clone = true +patches = [ + "redox.patch" +] +script = """ +# find . -type d -exec touch {}/Makefile.in \\; +# touch aclocal.m4 configure configure.ac Makefile.am +autotools_recursive_regenerate +""" + +[build] +template = "custom" +dependencies = [ + "glib", +] +script = """ +DYNAMIC_INIT + +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +COOKBOOK_CONFIGURE="./configure" +cookbook_configure +""" \ No newline at end of file diff --git a/recipes/wip/libs/other/poly2tri-c/redox.patch b/recipes/wip/libs/other/poly2tri-c/redox.patch new file mode 100644 index 000000000..3ad4623fb --- /dev/null +++ b/recipes/wip/libs/other/poly2tri-c/redox.patch @@ -0,0 +1,49 @@ +diff --git a/Makefile.am b/Makefile.am +index c6f694e..6082285 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,6 +1,6 @@ + SUBDIRS = poly2tri-c bin + +-ACLOCAL_AMFLAGS = -I m4 ++ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} + + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = poly2tri-c.pc +diff --git a/configure.ac b/configure.ac +index 8ba632f..a52b355 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -83,9 +83,6 @@ AC_PROG_CC + # -Werror, so we will only add that option afterwards. For more information, see + # the discussion at http://lists.gnu.org/archive/html/bug-autoconf/2010-01/msg00031.html + +-# Pedantic errors please +-CFLAGS="$CFLAGS -Wall -ansi -pedantic" +- + # Find the standard math functions + # Taken from http://www.flameeyes.eu/autotools-mythbuster/autoconf/finding.html + AC_CHECK_HEADERS([math.h]) +@@ -93,9 +90,6 @@ AC_SEARCH_LIBS([log10], [m], [], [ + AC_MSG_ERROR([unable to find the log10() function]) + ]) + +-# Warnings as errors please +-CFLAGS="$CFLAGS -Werror" +- + # Find GLib support via pkg-config + PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28]) + +diff --git a/poly2tri-c/refine/Makefile.am b/poly2tri-c/refine/Makefile.am +index 8701b0d..74edd34 100644 +--- a/poly2tri-c/refine/Makefile.am ++++ b/poly2tri-c/refine/Makefile.am +@@ -1,6 +1,6 @@ + noinst_LTLIBRARIES = libp2tc-refine.la + +-libp2tc_refine_la_SOURCES = bounded-line.c bounded-line.h cdt.c cdt.h cdt-flipfix.c cdt-flipfix.h circle.c circle.h cluster.c cluster.h delaunay-terminator.c delaunay-terminator.h edge.c edge.h line.c line.h rmath.c rmath.h mesh.c mesh.h mesh-action.c mesh-action.h point.c point.h pslg.c pslg.h refine.h refiner.c refiner.h triangle.c triangle.h triangulation.h utils.c utils.h vector2.c vector2.h vedge.c vedge.h vtriangle.c vtriangle.h visibility.c visibility.h ++libp2tc_refine_la_SOURCES = bounded-line.c bounded-line.h cdt-flipfix.c cdt-flipfix.h circle.c circle.h cluster.c cluster.h delaunay-terminator.c delaunay-terminator.h edge.c edge.h line.c line.h rmath.c rmath.h mesh.c mesh.h mesh-action.c mesh-action.h point.c point.h pslg.c pslg.h refine.h refiner.c refiner.h rcdt.c rcdt.h rutils.c rutils.h triangle.c triangle.h triangulation.h vector2.c vector2.h vedge.c vedge.h vtriangle.c vtriangle.h visibility.c visibility.h + + P2TC_REFINE_publicdir = $(P2TC_publicdir)/refine +-P2TC_REFINE_public_HEADERS = bounded-line.h cdt.h circle.h cluster.h edge.h line.h mesh.h mesh-action.h point.h pslg.h refine.h refiner.h rmath.h triangle.h triangulation.h utils.h vector2.h vedge.h vtriangle.h visibility.h ++P2TC_REFINE_public_HEADERS = bounded-line.h circle.h cluster.h edge.h line.h mesh.h mesh-action.h point.h pslg.h rcdt.h refine.h refiner.h rmath.h rutils.h triangle.h triangulation.h vector2.h vedge.h vtriangle.h visibility.h diff --git a/recipes/wip/libs/other/sdl-pango/recipe.toml b/recipes/wip/libs/sdl/sdl-pango/recipe.toml similarity index 61% rename from recipes/wip/libs/other/sdl-pango/recipe.toml rename to recipes/wip/libs/sdl/sdl-pango/recipe.toml index 479210a98..d129096ef 100644 --- a/recipes/wip/libs/other/sdl-pango/recipe.toml +++ b/recipes/wip/libs/sdl/sdl-pango/recipe.toml @@ -1,5 +1,7 @@ -#TODO can't recognize the redox target +#TODO compiled but untested [source] tar = "https://sourceforge.net/projects/sdlpango/files/SDL_Pango/0.1.2/SDL_Pango-0.1.2.tar.gz/download" +script = "GNU_CONFIG_GET config.sub" [build] template = "configure" +dependencies = ["pango"] diff --git a/recipes/wip/libs/other/sdl2-net/recipe.toml b/recipes/wip/libs/sdl/sdl2-net/recipe.toml similarity index 100% rename from recipes/wip/libs/other/sdl2-net/recipe.toml rename to recipes/wip/libs/sdl/sdl2-net/recipe.toml diff --git a/recipes/wip/libs/other/sdl2-pango/recipe.toml b/recipes/wip/libs/sdl/sdl2-pango/recipe.toml similarity index 100% rename from recipes/wip/libs/other/sdl2-pango/recipe.toml rename to recipes/wip/libs/sdl/sdl2-pango/recipe.toml diff --git a/recipes/wip/libs/other/sdl3/recipe.toml b/recipes/wip/libs/sdl/sdl3/recipe.toml similarity index 100% rename from recipes/wip/libs/other/sdl3/recipe.toml rename to recipes/wip/libs/sdl/sdl3/recipe.toml diff --git a/recipes/wip/libs/other/bullet/recipe.toml b/recipes/wip/libs/sim/bullet/recipe.toml similarity index 92% rename from recipes/wip/libs/other/bullet/recipe.toml rename to recipes/wip/libs/sim/bullet/recipe.toml index ad41e9a41..1ef0187dc 100644 --- a/recipes/wip/libs/other/bullet/recipe.toml +++ b/recipes/wip/libs/sim/bullet/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO gwen dep build error # build instructions: https://github.com/bulletphysics/bullet3#build-instructions-for-bullet-using-premake-you-can-also-use-cmake-instead [source] git = "https://github.com/bulletphysics/bullet3" diff --git a/recipes/wip/libs/other/boost/recipe.toml b/recipes/wip/libs/suite/boost/recipe.toml similarity index 100% rename from recipes/wip/libs/other/boost/recipe.toml rename to recipes/wip/libs/suite/boost/recipe.toml diff --git a/recipes/wip/libs/other/boost/redox.patch b/recipes/wip/libs/suite/boost/redox.patch similarity index 100% rename from recipes/wip/libs/other/boost/redox.patch rename to recipes/wip/libs/suite/boost/redox.patch diff --git a/recipes/wip/libs/other/raylib/recipe.toml b/recipes/wip/libs/suite/raylib/recipe.toml similarity index 73% rename from recipes/wip/libs/other/raylib/recipe.toml rename to recipes/wip/libs/suite/raylib/recipe.toml index f5fdd7329..b28479aa6 100644 --- a/recipes/wip/libs/other/raylib/recipe.toml +++ b/recipes/wip/libs/suite/raylib/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO implicit declaration of function 'sched_get_priority_min' [-Werror=implicit-function-declaration] # build instructions: https://github.com/raysan5/raylib/wiki/Working-on-GNU-Linux [source] git = "https://github.com/raysan5/raylib" diff --git a/recipes/wip/libs/text/inih/recipe.toml b/recipes/wip/libs/text/inih/recipe.toml index 6e950d061..e36bb5bb2 100644 --- a/recipes/wip/libs/text/inih/recipe.toml +++ b/recipes/wip/libs/text/inih/recipe.toml @@ -1,5 +1,4 @@ -#TODO not compiled or tested -# build instructions: https://github.com/benhoyt/inih#meson-notes +#TODO compiled but not tested [source] git = "https://github.com/benhoyt/inih" rev = "r62" diff --git a/recipes/wip/libs/other/webkit/recipe.toml b/recipes/wip/libs/web/webkit/recipe.toml similarity index 100% rename from recipes/wip/libs/other/webkit/recipe.toml rename to recipes/wip/libs/web/webkit/recipe.toml diff --git a/recipes/wip/math/bcal/recipe.toml b/recipes/wip/math/bcal/recipe.toml index f4a95690f..13a214b51 100644 --- a/recipes/wip/math/bcal/recipe.toml +++ b/recipes/wip/math/bcal/recipe.toml @@ -1,4 +1,5 @@ -#TODO missing script for gnu make +#TODO build and test +#TODO does binary strip target is needed? # build instructions: https://github.com/jarun/bcal#installation [source] tar = "https://github.com/jarun/bcal/releases/download/v2.5/bcal-v2.5.tar.gz" @@ -7,3 +8,9 @@ template = "custom" dependencies = [ "readline", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/math/cosmic-ext-calculator/recipe.toml b/recipes/wip/math/cosmic-ext-calculator/recipe.toml index 5dbbcf4c0..4e068a3a1 100644 --- a/recipes/wip/math/cosmic-ext-calculator/recipe.toml +++ b/recipes/wip/math/cosmic-ext-calculator/recipe.toml @@ -1,15 +1,18 @@ -#TODO not compiled or tested -#TODO verify if the desktop shortcut and icon configuration is correct +#TODO compiled but untested +#TODO fix configuration commands [source] git = "https://github.com/cosmic-utils/calculator" +shallow_clone = true [build] template = "custom" +dependencies = ["libxkbcommon"] script = """ +DYNAMIC_INIT +cookbook_cargo mkdir -pv "${COOKBOOK_STAGE}"/usr/share/applications mkdir -pv "${COOKBOOK_STAGE}"/usr/share/metainfo mkdir -pv "${COOKBOOK_STAGE}"/usr/share/icons/hicolor/scalable/apps cp -rv "${COOKBOOK_SOURCE}"/res/app.desktop "${COOKBOOK_STAGE}"/usr/share/applications/dev.edfloreshz.Calculator.desktop cp -rv "${COOKBOOK_SOURCE}"/res/metainfo.xml "${COOKBOOK_STAGE}"/usr/share/metainfo/dev.edfloreshz.Calculator.metainfo.xml cp -rv "${COOKBOOK_SOURCE}"/res/icons/hicolor/scalable/apps/icon.svg "${COOKBOOK_STAGE}"/usr/share/icons/hicolor/scalable/apps/dev.edfloreshz.Calculator.svg -cookbook_cargo """ diff --git a/recipes/wip/math/fend/recipe.toml b/recipes/wip/math/fend/recipe.toml index 9916c11bc..911beb753 100644 --- a/recipes/wip/math/fend/recipe.toml +++ b/recipes/wip/math/fend/recipe.toml @@ -1,7 +1,7 @@ #TODO compiled but not tested [source] git = "https://github.com/printfn/fend" - +shallow_clone = true [build] dependencies = [ "openssl3", diff --git a/recipes/wip/math/fractal-explorer/recipe.toml b/recipes/wip/math/fractal-explorer/recipe.toml index 7ea0cbfb9..863a2e4d9 100644 --- a/recipes/wip/math/fractal-explorer/recipe.toml +++ b/recipes/wip/math/fractal-explorer/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO wayland-backend crate error [source] git = "https://github.com/boclair/fractal-explorer" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/math/gnumeric/recipe.toml b/recipes/wip/math/gnumeric/recipe.toml index 35aa3e546..ef29ef743 100644 --- a/recipes/wip/math/gnumeric/recipe.toml +++ b/recipes/wip/math/gnumeric/recipe.toml @@ -1,6 +1,11 @@ -#TODO not compiled or tested +#TODO missing dependencies #TODO discover minimum dependencies from configure log [source] tar = "https://download.gnome.org/sources/gnumeric/1.12/gnumeric-1.12.61.tar.xz" [build] template = "configure" +dependencies = [ + "zlib", + "gtk3", + "libxml2", +] diff --git a/recipes/wip/math/grace/recipe.toml b/recipes/wip/math/grace/recipe.toml index ef5f1627b..768dec042 100644 --- a/recipes/wip/math/grace/recipe.toml +++ b/recipes/wip/math/grace/recipe.toml @@ -1,3 +1,4 @@ +#TODO can't recognize redox #TODO determine minimum dependencies from configure log # build instructions: https://plasma-gate.weizmann.ac.il/Grace/doc/UsersGuide.html#ss2.1 [source] diff --git a/recipes/wip/math/kalc/recipe.toml b/recipes/wip/math/kalc/recipe.toml index 6217dc976..ab9858e6b 100644 --- a/recipes/wip/math/kalc/recipe.toml +++ b/recipes/wip/math/kalc/recipe.toml @@ -1,5 +1,6 @@ #TODO gmp-mpfr-sys crate error [source] git = "https://github.com/bgkillas/kalc" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/math/kalker/recipe.toml b/recipes/wip/math/kalker/recipe.toml index 242c9ccd6..f9229a957 100644 --- a/recipes/wip/math/kalker/recipe.toml +++ b/recipes/wip/math/kalker/recipe.toml @@ -1,13 +1,12 @@ -#TODO gmp-mpfr-sys crate error (after cargo update) +#TODO gmp-mpfr-sys crate error: redox unsupported [source] git = "https://github.com/PaddiM8/kalker" +shallow_clone = true [build] -template = "custom" +template = "cargo" +cargopackages = ["kalker"] dependencies = [ "libgmp", "libmpfr", "mpc", ] -script = """ -cookbook_cargo_packages kalker -""" diff --git a/recipes/wip/math/numbat/recipe.toml b/recipes/wip/math/numbat/recipe.toml index 9b5ee67e4..1958795ad 100644 --- a/recipes/wip/math/numbat/recipe.toml +++ b/recipes/wip/math/numbat/recipe.toml @@ -1,9 +1,7 @@ #TODO compiled but not tested -#TODO missing script to properly move the binary [source] git = "https://github.com/sharkdp/numbat" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages numbat-cli -""" +template = "cargo" +cargopackages = ["numbat-cli"] diff --git a/recipes/wip/math/numr/recipe.toml b/recipes/wip/math/numr/recipe.toml index 083b509d4..da2378dac 100644 --- a/recipes/wip/math/numr/recipe.toml +++ b/recipes/wip/math/numr/recipe.toml @@ -1,8 +1,10 @@ -#TODO not compiled or tested +#TODO atomic-write-file and nix crates error [source] git = "https://github.com/nasedkinpv/numr" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages numr-cli numr-tui -""" +template = "cargo" +cargopackages = [ + "numr-cli", + "numr-tui", +] diff --git a/recipes/wip/math/octave/recipe.toml b/recipes/wip/math/octave/recipe.toml index b202e3d11..884218b3f 100644 --- a/recipes/wip/math/octave/recipe.toml +++ b/recipes/wip/math/octave/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO enable gcc fortran frontend #TODO discover minimum dependencies from configure log [source] tar = "https://ftp.gnu.org/gnu/octave/octave-11.1.0.tar.lz" diff --git a/recipes/wip/math/primesieve/recipe.toml b/recipes/wip/math/primesieve/recipe.toml index 75b9866d3..7e93feda0 100644 --- a/recipes/wip/math/primesieve/recipe.toml +++ b/recipes/wip/math/primesieve/recipe.toml @@ -1,7 +1,8 @@ -#TODO not compiled or tested +#TODO compiled but untested # build instructions: https://github.com/kimwalisch/primesieve/blob/master/doc/BUILD.md [source] git = "https://github.com/kimwalisch/primesieve" -rev = "f3114488ddded8edf2c201e31ad308ed9e6a9f78" +rev = "v12.16" +shallow_clone = true [build] template = "cmake" diff --git a/recipes/wip/math/qalculate-gtk/recipe.toml b/recipes/wip/math/qalculate-gtk/recipe.toml index b46413b9a..c0c28aca2 100644 --- a/recipes/wip/math/qalculate-gtk/recipe.toml +++ b/recipes/wip/math/qalculate-gtk/recipe.toml @@ -1,4 +1,4 @@ -#TODO make gtk3 work +#TODO build error [source] tar = "https://github.com/Qalculate/qalculate-gtk/releases/download/v4.9.0/qalculate-gtk-4.9.0.tar.gz" [build] diff --git a/recipes/wip/math/ratex/recipe.toml b/recipes/wip/math/ratex/recipe.toml index ca8d40a07..eae7e5b4e 100644 --- a/recipes/wip/math/ratex/recipe.toml +++ b/recipes/wip/math/ratex/recipe.toml @@ -1,12 +1,13 @@ -#TODO compile and test +#TODO compiled but untested +#TODO add script for installation [source] git = "https://github.com/erweixin/RaTeX" shallow_clone = true [build] template = "cargo" cargopackages = [ - "ratex-render", + #"ratex-render", "ratex-pdf", "ratex-svg", ] -cargoflags = ["--features cli embed-fonts"] +cargoflags = ["--features=cli,embed-fonts"] diff --git a/recipes/wip/math/rink/recipe.toml b/recipes/wip/math/rink/recipe.toml index 7379c8cf1..1504f42f0 100644 --- a/recipes/wip/math/rink/recipe.toml +++ b/recipes/wip/math/rink/recipe.toml @@ -1,11 +1,10 @@ -#TODO async-io and rustix crates error +#TODO compiled but untested [source] git = "https://github.com/tiffany352/rink-rs" +shallow_clone = true [build] -template = "custom" +template = "cargo" +cargopackages = ["rink"] dependencies = [ "openssl3", ] -script = """ -cookbook_cargo_packages rink -""" diff --git a/recipes/wip/math/scilab/recipe.toml b/recipes/wip/math/scilab/recipe.toml index 60ba7f3d9..911e53d19 100644 --- a/recipes/wip/math/scilab/recipe.toml +++ b/recipes/wip/math/scilab/recipe.toml @@ -1,11 +1,11 @@ -#TODO not compiled or tested +#TODO fix source path in script #TODO discover minimum dependencies from configure log [source] tar = "https://gitlab.com/scilab/scilab/-/archive/2026.0.1/scilab-2026.0.1.tar.bz2" [build] template = "custom" script = """ -COOKBOOK_SOURCE="${COOKBOOK_SOURCE}/scilab" +COOKBOOK_CONFIGURE=${COOKBOOK_SOURCE}/scilab/configure DYNAMIC_INIT cookbook_configure """ diff --git a/recipes/wip/net/analysis/wireshark/recipe.toml b/recipes/wip/net/analysis/wireshark/recipe.toml index b8071e5c8..81884587e 100644 --- a/recipes/wip/net/analysis/wireshark/recipe.toml +++ b/recipes/wip/net/analysis/wireshark/recipe.toml @@ -3,7 +3,7 @@ # build instructions: https://www.wireshark.org/docs/wsdg_html_chunked/ChSetupUNIX.html # build options: https://gitlab.com/wireshark/wireshark/-/blob/master/CMakeOptions.txt [source] -tar = "https://2.na.dl.wireshark.org/src/wireshark-4.6.5.tar.xz" +tar = "https://gitlab.com/wireshark/wireshark/-/archive/v4.7.4/wireshark-v4.7.4.tar.bz2" [build] template = "cmake" cmakeflags = [ diff --git a/recipes/wip/search/silver-searcher/recipe.toml b/recipes/wip/search/silver-searcher/recipe.toml new file mode 100644 index 000000000..bd0209bbd --- /dev/null +++ b/recipes/wip/search/silver-searcher/recipe.toml @@ -0,0 +1,10 @@ +#TODO compile and test +[source] +tar = "https://geoff.greer.fm/ag/releases/the_silver_searcher-2.2.0.tar.gz" +[build] +template = "configure" +dependencies = [ + "pcre", + "zlib", + "xz", +] diff --git a/recipes/wip/security/capstone/recipe.toml b/recipes/wip/security/capstone/recipe.toml index c0cef7518..01ef3bf57 100644 --- a/recipes/wip/security/capstone/recipe.toml +++ b/recipes/wip/security/capstone/recipe.toml @@ -1,6 +1,11 @@ -#TODO missing script for building, see https://github.com/capstone-engine/capstone/blob/next/COMPILE.TXT +#TODO build and test +# build instructions: https://github.com/capstone-engine/capstone/blob/next/BUILDING.md [source] git = "https://github.com/capstone-engine/capstone" -rev = "097c04d9413c59a58b00d4d1c8d5dc0ac158ffaa" +rev = "release-5.0.9" +shallow_clone = true [build] -template = "custom" +template = "cmake" +cmakeflags = [ + "-DCAPSTONE_ARCHITECTURE_DEFAULT=OFF", +] diff --git a/recipes/wip/security/clamav/recipe.toml b/recipes/wip/security/clamav/recipe.toml index d9a9a3bdb..aa37899c6 100644 --- a/recipes/wip/security/clamav/recipe.toml +++ b/recipes/wip/security/clamav/recipe.toml @@ -1,10 +1,16 @@ -#TODO not compiled or tested +#TODO try to disable libcheck? # build instructions: https://docs.clamav.net/manual/Installing/Installing-from-source-Unix.html -#TODO missing Sendmail Mail Filter API (Milter) [source] -tar = "https://www.clamav.net/downloads/production/clamav-1.5.0.tar.gz" +tar = "https://www.clamav.net/downloads/production/clamav-1.5.4.tar.gz" [build] -template = "custom" +template = "cmake" +cmakeflags = [ + "-DENABLE_MILTER_DEFAULT=OFF", + "-DENABLE_TESTS_DEFAULT=OFF", + "-DENABLE_MAN_PAGES_DEFAULT=OFF", + "-DENABLE_UNRAR_DEFAULT=OFF", + "-DENABLE_SYSTEMD_DEFAULT=OFF", +] dependencies = [ "curl", "ncursesw", @@ -15,8 +21,3 @@ dependencies = [ "libxml2", "zlib", ] -script = """ -DYNAMIC_INIT -export CPPFLAGS="-I${COOKBOOK_SYSROOT}/include/ncurses" -cookbook_cmake -""" diff --git a/recipes/wip/security/cotp/recipe.toml b/recipes/wip/security/cotp/recipe.toml index 70abd2029..899d53402 100644 --- a/recipes/wip/security/cotp/recipe.toml +++ b/recipes/wip/security/cotp/recipe.toml @@ -1,12 +1,9 @@ -#TODO not compiled or tested +#TODO outdated nix crate? [source] git = "https://github.com/replydev/cotp" +shallow_clone = true [build] -template = "custom" +template = "cargo" dependencies = [ "libxkbcommon", ] -script = """ -DYNAMIC_INIT -cookbook_cargo -""" diff --git a/recipes/wip/security/fakeroot/recipe.toml b/recipes/wip/security/fakeroot/recipe.toml index 18352fb69..b1c4bafa1 100644 --- a/recipes/wip/security/fakeroot/recipe.toml +++ b/recipes/wip/security/fakeroot/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO configuration problem [source] git = "https://salsa.debian.org/clint/fakeroot" rev = "upstream/1.37.2" diff --git a/recipes/wip/security/hydra/recipe.toml b/recipes/wip/security/hydra/recipe.toml index b1d66d7eb..9438562f3 100644 --- a/recipes/wip/security/hydra/recipe.toml +++ b/recipes/wip/security/hydra/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO makefile can't be found [source] git = "https://github.com/vanhauser-thc/thc-hydra" rev = "v9.7" diff --git a/recipes/wip/security/john-the-ripper/recipe.toml b/recipes/wip/security/john-the-ripper/recipe.toml index 5dee8c601..c82160539 100644 --- a/recipes/wip/security/john-the-ripper/recipe.toml +++ b/recipes/wip/security/john-the-ripper/recipe.toml @@ -1,4 +1,5 @@ -#TODO missing script for GNU Autotools, see https://github.com/openwall/john/blob/bleeding-jumbo/doc/INSTALL +#TODO missing script for GNU Autotools, see +# build instructions: https://github.com/openwall/john/blob/bleeding-jumbo/doc/INSTALL [source] tar = "https://www.openwall.com/john/k/john-1.9.0-jumbo-1.tar.xz" [build] @@ -9,3 +10,9 @@ dependencies = [ "kerberos5", "libgmp", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/src" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/security/openpgp-ca/recipe.toml b/recipes/wip/security/openpgp-ca/recipe.toml index 2bb2d3bde..f1cdbb956 100644 --- a/recipes/wip/security/openpgp-ca/recipe.toml +++ b/recipes/wip/security/openpgp-ca/recipe.toml @@ -1,9 +1,11 @@ #TODO make the libpcsclite dependency work [source] git = "https://gitlab.com/openpgp-ca/openpgp-ca" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT cookbook_cargo_packages openpgp-ca openpgp-ca-restd """ dependencies = [ diff --git a/recipes/wip/security/openvas/recipe.toml b/recipes/wip/security/openvas/recipe.toml index 686ee8b1c..5fe49fd59 100644 --- a/recipes/wip/security/openvas/recipe.toml +++ b/recipes/wip/security/openvas/recipe.toml @@ -1,3 +1,4 @@ +#TODO fix krb5 dep #TODO discover minimum dependencies from cmake log # build instructions: https://github.com/greenbone/openvas-scanner/blob/main/INSTALL.md [source] @@ -6,20 +7,20 @@ rev = "v23.45.6" shallow_clone = true [build] template = "cmake" -#dependencies = [ +dependencies = [ #"net-snmp", #"libpcap", - #"glib", - #"json-glib", + "glib", + "json-glib", #"libgcrypt", #"gpgme", #"redis", #"libssh", #"libksba", - #"gnutls", - #"curl", + "gnutls3", + "curl", #"libbsd", - #"krb5", + "krb5", #"gvm-libs", #"file", -#] +] diff --git a/recipes/wip/security/pass-tui/recipe.toml b/recipes/wip/security/pass-tui/recipe.toml index 5fc508e5b..38ca0edab 100644 --- a/recipes/wip/security/pass-tui/recipe.toml +++ b/recipes/wip/security/pass-tui/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO fix gpgme dep [source] git = "https://codeberg.org/frofor/pass-tui" shallow_clone = true diff --git a/recipes/wip/security/pass/recipe.toml b/recipes/wip/security/pass/recipe.toml index 95747375c..938ced1fe 100644 --- a/recipes/wip/security/pass/recipe.toml +++ b/recipes/wip/security/pass/recipe.toml @@ -1,6 +1,12 @@ -#TODO missing script for gnu make: https://git.zx2c4.com/password-store/tree/INSTALL +#TODO build and test #TODO determine compile-time and run-time dependencies: https://git.zx2c4.com/password-store/tree/README#n15 [source] tar = "https://git.zx2c4.com/password-store/snapshot/password-store-1.7.4.tar.xz" [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/security/please/recipe.toml b/recipes/wip/security/please/recipe.toml index e681b3cce..456cafc90 100644 --- a/recipes/wip/security/please/recipe.toml +++ b/recipes/wip/security/please/recipe.toml @@ -1,5 +1,6 @@ #TODO users crate error (after cargo update) [source] git = "https://gitlab.com/edneville/please" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/plutus-rustus/recipe.toml b/recipes/wip/security/plutus-rustus/recipe.toml index 5df54054a..695c9aeb7 100644 --- a/recipes/wip/security/plutus-rustus/recipe.toml +++ b/recipes/wip/security/plutus-rustus/recipe.toml @@ -1,5 +1,6 @@ #TODO Not compiled or tested [source] git = "https://github.com/a137x/plutus-rustus" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/rage/recipe.toml b/recipes/wip/security/rage/recipe.toml index 54f1fc033..cbe679547 100644 --- a/recipes/wip/security/rage/recipe.toml +++ b/recipes/wip/security/rage/recipe.toml @@ -1,8 +1,10 @@ #TODO compiled but not tested [source] git = "https://github.com/str4d/rage" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT cookbook_cargo_packages rage """ diff --git a/recipes/wip/security/retdec/recipe.toml b/recipes/wip/security/retdec/recipe.toml index ff74a4097..0593591ca 100644 --- a/recipes/wip/security/retdec/recipe.toml +++ b/recipes/wip/security/retdec/recipe.toml @@ -2,10 +2,16 @@ # build instructions: https://github.com/avast/retdec#process [source] git = "https://github.com/avast/retdec" -rev = "53e55b4b26e9b843787f0e06d867441e32b1604e" +rev = "9450585" +shallow_clone = true [build] template = "cmake" +cmakeflags = [ + "-DRETDEC_USE_SYSTEM_CAPSTONE=ON", + "-DRETDEC_ENABLE_ALL=OFF", +] dependencies = [ "openssl3", "zlib", + "capstone", ] diff --git a/recipes/wip/security/rowhammer-test/recipe.toml b/recipes/wip/security/rowhammer-test/recipe.toml index 3b859b959..151e7c767 100644 --- a/recipes/wip/security/rowhammer-test/recipe.toml +++ b/recipes/wip/security/rowhammer-test/recipe.toml @@ -1,5 +1,14 @@ -#TODO missing script for the "make.sh" file, see https://github.com/google/rowhammer-test#readme +#TODO build and test +# build script: https://github.com/google/rowhammer-test/blob/master/make.sh [source] git = "https://github.com/google/rowhammer-test" +rev = "c1d2bd9" +shallow_clone = true [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/rowhammer_test.cc" ./ +mkdir -pv "${COOKBOOK_STAGE}/usr/bin" +DYNAMIC_INIT +"${COOKBOOK_CXX}" rowhammer_test.cc -o "${COOKBOOK_STAGE}"/usr/bin/rowhammer-test -g -Wall -Werror -O2 +""" diff --git a/recipes/wip/security/rshijack/recipe.toml b/recipes/wip/security/rshijack/recipe.toml index 3feeee34f..f751e2155 100644 --- a/recipes/wip/security/rshijack/recipe.toml +++ b/recipes/wip/security/rshijack/recipe.toml @@ -1,5 +1,6 @@ #TODO pnet_sys crate error (after cargo update) [source] git = "https://github.com/kpcyrd/rshijack" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/rustyvault/recipe.toml b/recipes/wip/security/rustyvault/recipe.toml index 175875b8a..14483d082 100644 --- a/recipes/wip/security/rustyvault/recipe.toml +++ b/recipes/wip/security/rustyvault/recipe.toml @@ -1,6 +1,7 @@ #TODO async-io and rustix crates error [source] git = "https://github.com/Tongsuo-Project/RustyVault" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/security/sn0int/recipe.toml b/recipes/wip/security/sn0int/recipe.toml index 39292b7eb..67fc306b6 100644 --- a/recipes/wip/security/sn0int/recipe.toml +++ b/recipes/wip/security/sn0int/recipe.toml @@ -1,6 +1,7 @@ #TODO outdated redox_syscall crate [source] git = "https://github.com/kpcyrd/sn0int" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/security/sniffglue/recipe.toml b/recipes/wip/security/sniffglue/recipe.toml index 9972734ee..51447ff30 100644 --- a/recipes/wip/security/sniffglue/recipe.toml +++ b/recipes/wip/security/sniffglue/recipe.toml @@ -1,6 +1,7 @@ #TODO make the libpcap dependency work [source] git = "https://github.com/kpcyrd/sniffglue" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/security/sq/recipe.toml b/recipes/wip/security/sq/recipe.toml index db8fd5eb8..beb33b631 100644 --- a/recipes/wip/security/sq/recipe.toml +++ b/recipes/wip/security/sq/recipe.toml @@ -1,8 +1,10 @@ -#TODO make libnettle work +#TODO nettle-sys crate error [source] git = "https://gitlab.com/sequoia-pgp/sequoia-sq" +shallow_clone = true [build] template = "cargo" +cargopackages = ["sequoia-sq"] dependencies = [ "openssl3", "libnettle", diff --git a/recipes/wip/security/sqop/recipe.toml b/recipes/wip/security/sqop/recipe.toml index 8d567852c..8dc40cd83 100644 --- a/recipes/wip/security/sqop/recipe.toml +++ b/recipes/wip/security/sqop/recipe.toml @@ -1,6 +1,7 @@ -#TODO make libnettle work +#TODO nettle-sys crate error (after cargo update) [source] git = "https://gitlab.com/sequoia-pgp/sequoia-sop" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/security/sqv/recipe.toml b/recipes/wip/security/sqv/recipe.toml index 90fe20244..696d0363c 100644 --- a/recipes/wip/security/sqv/recipe.toml +++ b/recipes/wip/security/sqv/recipe.toml @@ -1,6 +1,7 @@ -#TODO make libnettle work +#TODO nettle-sys crate error [source] git = "https://gitlab.com/sequoia-pgp/sequoia-sqv" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/security/stegano/recipe.toml b/recipes/wip/security/stegano/recipe.toml index 1e67ce410..4e05054ae 100644 --- a/recipes/wip/security/stegano/recipe.toml +++ b/recipes/wip/security/stegano/recipe.toml @@ -1,8 +1,7 @@ #TODO require a command to move the binary [source] git = "https://github.com/steganogram/stegano-rs" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages stegano-cli -""" +template = "cargo" +cargopackages = ["stegano-cli"] diff --git a/recipes/wip/security/sudo-rs/recipe.toml b/recipes/wip/security/sudo-rs/recipe.toml index f0daeb473..abfe22de6 100644 --- a/recipes/wip/security/sudo-rs/recipe.toml +++ b/recipes/wip/security/sudo-rs/recipe.toml @@ -1,5 +1,4 @@ -#TODO libc crate error -#TODO requires Linux PAM +#TODO port [source] git = "https://github.com/memorysafety/sudo-rs" [build] diff --git a/recipes/wip/security/threatdeck/recipe.toml b/recipes/wip/security/threatdeck/recipe.toml index 12955a6b1..cf283c166 100644 --- a/recipes/wip/security/threatdeck/recipe.toml +++ b/recipes/wip/security/threatdeck/recipe.toml @@ -1,6 +1,7 @@ -#TODO compile and test +#TODO compiled but untested [source] git = "https://github.com/gripebomb/ThreatDeck" shallow_clone = true [build] template = "cargo" +dependencies = ["openssl3"] diff --git a/recipes/wip/security/tiger/recipe.toml b/recipes/wip/security/tiger/recipe.toml index fadbea992..848732c17 100644 --- a/recipes/wip/security/tiger/recipe.toml +++ b/recipes/wip/security/tiger/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO missing "getpermit" make target for "all" target # installation instructions: https://cgit.git.savannah.gnu.org/cgit/tiger.git/tree/USING#n80 [source] tar = "https://download.savannah.gnu.org/releases/tiger/tiger_3.2.4rc1.tar.gz" diff --git a/recipes/wip/security/tyr/recipe.toml b/recipes/wip/security/tyr/recipe.toml index 29b21d9fb..1f54ffa35 100644 --- a/recipes/wip/security/tyr/recipe.toml +++ b/recipes/wip/security/tyr/recipe.toml @@ -1,5 +1,7 @@ #TODO not compiled or tested [source] git = "https://gitlab.com/cyberactivity/tyr" +shallow_clone = true [build] template = "cargo" +cargopackages = ["baldur"] diff --git a/recipes/wip/security/vagga/recipe.toml b/recipes/wip/security/vagga/recipe.toml index e284538b8..92e72fa7e 100644 --- a/recipes/wip/security/vagga/recipe.toml +++ b/recipes/wip/security/vagga/recipe.toml @@ -1,5 +1,6 @@ -#TODO libc and nix crate errors (after cargo update) +#TODO very outdated nix crate (after cargo update) [source] git = "https://github.com/tailhook/vagga" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/veldora/recipe.toml b/recipes/wip/security/veldora/recipe.toml index c6eb25b5a..a643d986d 100644 --- a/recipes/wip/security/veldora/recipe.toml +++ b/recipes/wip/security/veldora/recipe.toml @@ -1,5 +1,6 @@ #TODO compiled but not tested [source] git = "https://github.com/tamton-aquib/veldora" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/weggli/recipe.toml b/recipes/wip/security/weggli/recipe.toml index 7347cd43e..7432870c0 100644 --- a/recipes/wip/security/weggli/recipe.toml +++ b/recipes/wip/security/weggli/recipe.toml @@ -1,5 +1,6 @@ -#TODO source code error +#TODO compiled but untested [source] git = "https://github.com/weggli-rs/weggli" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/security/whyno/recipe.toml b/recipes/wip/security/whyno/recipe.toml index a79882822..52bfd99b1 100644 --- a/recipes/wip/security/whyno/recipe.toml +++ b/recipes/wip/security/whyno/recipe.toml @@ -1,6 +1,7 @@ #TODO not compiled or tested [source] -git = "https://gnu.foo/projects/whyno" +git = "https://github.com/gnufood/whyno" shallow_clone = true [build] template = "cargo" +cargopackages = ["whyno-cli"] diff --git a/recipes/wip/security/yara-x/recipe.toml b/recipes/wip/security/yara-x/recipe.toml index fe61456ae..8d2ec8249 100644 --- a/recipes/wip/security/yara-x/recipe.toml +++ b/recipes/wip/security/yara-x/recipe.toml @@ -1,8 +1,7 @@ #TODO not compiled or tested [source] git = "https://github.com/VirusTotal/yara-x" +shallow_clone = true [build] -template = "custom" -script = """ -cookbook_cargo_packages yara-x-cli -""" +template = "cargo" +cargopackages = ["yara-x-cli"] diff --git a/recipes/wip/security/zabbix-lts/recipe.toml b/recipes/wip/security/zabbix-lts/recipe.toml index 8afa1a735..cffb66618 100644 --- a/recipes/wip/security/zabbix-lts/recipe.toml +++ b/recipes/wip/security/zabbix-lts/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO Unable to do DNS lookups (libresolv check failed) #TODO discover minimum dependencies from configure log # build and configuration instructions: https://www.zabbix.com/documentation/7.0/en/manual/installation/install [source] diff --git a/recipes/wip/services/ala-lape/recipe.toml b/recipes/wip/services/ala-lape/recipe.toml index 429b8963c..2db49520d 100644 --- a/recipes/wip/services/ala-lape/recipe.toml +++ b/recipes/wip/services/ala-lape/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO outdated nix crate (after cargo update) [source] git = "https://git.madhouse-project.org/algernon/ala-lape" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/services/busd/recipe.toml b/recipes/wip/services/busd/recipe.toml index 29c15e627..14ac4cf47 100644 --- a/recipes/wip/services/busd/recipe.toml +++ b/recipes/wip/services/busd/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested [source] git = "https://github.com/jackpot51/busd" shallow_clone = true diff --git a/recipes/wip/services/chrony/recipe.toml b/recipes/wip/services/chrony/recipe.toml index 59b2284d6..2a073af0a 100644 --- a/recipes/wip/services/chrony/recipe.toml +++ b/recipes/wip/services/chrony/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO can't open makefiles # build instructions: https://gitlab.com/chrony/chrony/-/blob/master/doc/installation.adoc?ref_type=heads [source] tar = "https://chrony-project.org/releases/chrony-4.8.tar.gz" diff --git a/recipes/wip/services/colord/recipe.toml b/recipes/wip/services/colord/recipe.toml index d25604152..c49354dc3 100644 --- a/recipes/wip/services/colord/recipe.toml +++ b/recipes/wip/services/colord/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO add gusb dep #TODO discover minimum dependencies from meson log [source] git = "https://github.com/hughsie/colord" @@ -8,9 +8,14 @@ shallow_clone = true template = "meson" mesonflags = [ "-Dsystemd=false", - "-Dudev-rules=false", + #"-Dudev-rules=false", "-Dintrospection=false", "-Dtests=false", "-Ddocs=false", "-Dman=false", ] +dependencies = [ + "glib", + "liblcms", + "sqlite3", +] diff --git a/recipes/wip/services/hickory-dns/recipe.toml b/recipes/wip/services/hickory-dns/recipe.toml index 90d6b11bb..ff8ef45dd 100644 --- a/recipes/wip/services/hickory-dns/recipe.toml +++ b/recipes/wip/services/hickory-dns/recipe.toml @@ -1,22 +1,13 @@ -#TODO compiled but not tested +#TODO build and test [source] git = "https://github.com/hickory-dns/hickory-dns" shallow_clone = true [build] -template = "custom" +template = "cargo" +cargopackages = [ + "hickory-dns", + "hickory-util", +] dependencies = [ "openssl3", ] -script = """ -DYNAMIC_INIT -binary=hickory-dns -"${COOKBOOK_CARGO}" build \ - --manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \ - --bin "${binary}" \ - --release - --all-features - mkdir -pv "${COOKBOOK_STAGE}/usr/bin" - cp -v \ - "target/${TARGET}/release/${binary}" \ - "${COOKBOOK_STAGE}/usr/bin/${binary}" -""" diff --git a/recipes/wip/services/lemurs/recipe.toml b/recipes/wip/services/lemurs/recipe.toml index cd16956de..d298eb214 100644 --- a/recipes/wip/services/lemurs/recipe.toml +++ b/recipes/wip/services/lemurs/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO outdated users crate [source] git = "https://github.com/coastalwhite/lemurs" +shallow_clone = true [build] template = "custom" script = """ diff --git a/recipes/wip/services/limine/recipe.toml b/recipes/wip/services/limine/recipe.toml index ca4084b24..fab143119 100644 --- a/recipes/wip/services/limine/recipe.toml +++ b/recipes/wip/services/limine/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but untested # build instructions: https://github.com/limine-bootloader/limine#building-the-bootloader [source] tar = "https://github.com/limine-bootloader/limine/releases/download/v7.2.0/limine-7.2.0.tar.xz" diff --git a/recipes/wip/services/networkmanager/recipe.toml b/recipes/wip/services/networkmanager/recipe.toml index 6078d90b5..1cd666e06 100644 --- a/recipes/wip/services/networkmanager/recipe.toml +++ b/recipes/wip/services/networkmanager/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO patch to disable libudev #TODO discover minimum dependencies from meson log # build instructions: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/CONTRIBUTING.md#building-from-source # freebsd has a shim to bypass linux dependencies: https://github.com/freebsd/freebsd-ports/blob/main/net-mgmt/networkmanager-shim/Makefile @@ -17,7 +17,7 @@ mesonflags = [ "-Dmodem_manager=false", "-Dnm_cloud_setup=false", "-Dnbft=false", - "-Dclat=false", + #"-Dclat=false", "-Dintrospection=false", "-Dman=false", "-Dtests=no", @@ -32,8 +32,9 @@ mesonflags = [ "-Dcrypto=null", "-Dppp=false", ] -#dependencies = [ +dependencies = [ + "libuuid", #"libpsl", #"readline", #"gnutls3", -#] +] diff --git a/recipes/wip/services/ntpd-rs/recipe.toml b/recipes/wip/services/ntpd-rs/recipe.toml index 1ca8496ed..2fa8822c2 100644 --- a/recipes/wip/services/ntpd-rs/recipe.toml +++ b/recipes/wip/services/ntpd-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO clock-steering and libc crate errors #TODO configure the service: https://docs.ntpd-rs.pendulum-project.org/guide/installation/#running-as-a-system-service [source] git = "https://github.com/pendulum-project/ntpd-rs" diff --git a/recipes/wip/services/pipewire/recipe.toml b/recipes/wip/services/pipewire/recipe.toml index ea85fd534..4a909fc02 100644 --- a/recipes/wip/services/pipewire/recipe.toml +++ b/recipes/wip/services/pipewire/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix gobject-introspection dep # build instructions: https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/INSTALL.md [source] git = "https://gitlab.freedesktop.org/pipewire/pipewire" @@ -15,6 +15,8 @@ mesonflags = [ "-Dflatpak=disabled", ] dependencies = [ - "libpulse", + #"libpulse", "sdl2", + "glib", + "gobject-introspection", ] diff --git a/recipes/wip/services/runst/recipe.toml b/recipes/wip/services/runst/recipe.toml index 82fcee951..e08ef6a8f 100644 --- a/recipes/wip/services/runst/recipe.toml +++ b/recipes/wip/services/runst/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO pango and pango-sys crate errors [source] git = "https://github.com/orhun/runst" shallow_clone = true diff --git a/recipes/wip/services/seatd/recipe.toml b/recipes/wip/services/seatd/recipe.toml index 6bca5f047..bdb1060e0 100644 --- a/recipes/wip/services/seatd/recipe.toml +++ b/recipes/wip/services/seatd/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO test more [source] git = "https://github.com/jackpot51/seatd" branch = "redox" diff --git a/recipes/wip/services/wireguard-rs/recipe.toml b/recipes/wip/services/wireguard-rs/recipe.toml index b6563f625..e727f36b5 100644 --- a/recipes/wip/services/wireguard-rs/recipe.toml +++ b/recipes/wip/services/wireguard-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO update mio to 0.8 (after cargo update) +#TODO outdated mio crate (after cargo update) [source] git = "https://git.zx2c4.com/wireguard-rs" shallow_clone = true diff --git a/recipes/wip/services/wireguard-tools/recipe.toml b/recipes/wip/services/wireguard-tools/recipe.toml index b21300ef5..b58864d14 100644 --- a/recipes/wip/services/wireguard-tools/recipe.toml +++ b/recipes/wip/services/wireguard-tools/recipe.toml @@ -1,4 +1,5 @@ -#TODO missing script for gnu make: https://git.zx2c4.com/wireguard-tools/tree/README.md +#TODO build and test +# build instructions: https://git.zx2c4.com/wireguard-tools/tree/README.md [source] tar = "https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-1.0.20260223.tar.xz" [build] @@ -7,3 +8,9 @@ template = "custom" dependencies = [ "wireguard-rs", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/src" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/services/wireplumber/recipe.toml b/recipes/wip/services/wireplumber/recipe.toml index 80a9c0a4c..49ae674ab 100644 --- a/recipes/wip/services/wireplumber/recipe.toml +++ b/recipes/wip/services/wireplumber/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix pipewire dep #TODO discover minimum dependencies from cmake log [source] git = "https://gitlab.freedesktop.org/pipewire/wireplumber" @@ -10,3 +10,7 @@ mesonflags = [ "-Dtests=false", "-Ddbus-tests=false", ] +dependencies = [ + "glib", + "pipewire", +] diff --git a/recipes/wip/sound/libpulse/recipe.toml b/recipes/wip/sound/libpulse/recipe.toml index 59048a407..92ed3ef62 100644 --- a/recipes/wip/sound/libpulse/recipe.toml +++ b/recipes/wip/sound/libpulse/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO undefined references # build instructions: https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/Developer/PulseAudioFromGit/ [source] tar = "https://freedesktop.org/software/pulseaudio/releases/pulseaudio-17.0.tar.xz" @@ -6,9 +6,9 @@ tar = "https://freedesktop.org/software/pulseaudio/releases/pulseaudio-17.0.tar. template = "meson" mesonflags = [ "-Ddaemon=false", - "-Ddoxygen=disabled", + "-Ddoxygen=false", "-Dman=false", - "-Dtests=disabled", + "-Dtests=false", "-Drunning-from-build-tree=false", ] dependencies = [ diff --git a/recipes/wip/sys-info/bb/recipe.toml b/recipes/wip/sys-info/bb/recipe.toml index 147c196e9..3aa685eb3 100644 --- a/recipes/wip/sys-info/bb/recipe.toml +++ b/recipes/wip/sys-info/bb/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO outdated nix crate? (after cargo update) [source] git = "https://github.com/epilys/bb" [build] diff --git a/recipes/wip/sys-info/btop/recipe.toml b/recipes/wip/sys-info/btop/recipe.toml index edb370b16..9ecdbe770 100644 --- a/recipes/wip/sys-info/btop/recipe.toml +++ b/recipes/wip/sys-info/btop/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO port: UnixPaths is not supported [source] git = "https://github.com/aristocratos/btop" rev = "v1.4.7" diff --git a/recipes/wip/sys-info/cpu-x/recipe.toml b/recipes/wip/sys-info/cpu-x/recipe.toml index 12af058c2..32e3159d0 100644 --- a/recipes/wip/sys-info/cpu-x/recipe.toml +++ b/recipes/wip/sys-info/cpu-x/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO fix libstatgrab dep # build instructions: https://github.com/TheTumultuousUnicornOfDarkness/CPU-X/wiki/manual-build#build-and-install-cpu-x [source] git = "https://github.com/TheTumultuousUnicornOfDarkness/CPU-X" @@ -16,7 +16,6 @@ dependencies = [ ] script = """ DYNAMIC_INIT -export CPPFLAGS="-I${COOKBOOK_SYSROOT}/include/ncurses" COOKBOOK_CMAKE_FLAGS+=( "-DWITH_GTK=0", "-DWITH_LIBGLFW=0", diff --git a/recipes/wip/sys-info/cyme/recipe.toml b/recipes/wip/sys-info/cyme/recipe.toml index dfb039fea..21404e6e3 100644 --- a/recipes/wip/sys-info/cyme/recipe.toml +++ b/recipes/wip/sys-info/cyme/recipe.toml @@ -1,5 +1,6 @@ -#TODO port to Redox +#TODO port [source] git = "https://github.com/tuna-f1sh/cyme" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/dmidecode-rs/recipe.toml b/recipes/wip/sys-info/dmidecode-rs/recipe.toml index 67669a2c4..7af784438 100644 --- a/recipes/wip/sys-info/dmidecode-rs/recipe.toml +++ b/recipes/wip/sys-info/dmidecode-rs/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO port [source] git = "https://github.com/jrgerber/dmidecode-rs" shallow_clone = true diff --git a/recipes/wip/sys-info/dmidecode/recipe.toml b/recipes/wip/sys-info/dmidecode/recipe.toml index cbafcc726..0bd675be1 100644 --- a/recipes/wip/sys-info/dmidecode/recipe.toml +++ b/recipes/wip/sys-info/dmidecode/recipe.toml @@ -1,5 +1,11 @@ -#TODO add script for gnu make: https://cgit.git.savannah.nongnu.org/cgit/dmidecode.git/tree/README#n22 +#TODO compile and test [source] tar = "https://download.savannah.gnu.org/releases/dmidecode/dmidecode-3.7.tar.xz" [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/sys-info/fastfetch/recipe.toml b/recipes/wip/sys-info/fastfetch/recipe.toml new file mode 100644 index 000000000..31a96e82e --- /dev/null +++ b/recipes/wip/sys-info/fastfetch/recipe.toml @@ -0,0 +1,14 @@ +#TODO port +[source] +git = "https://github.com/fastfetch-cli/fastfetch" +rev = "2.69.0" +shallow_clone = true +[build] +template = "cmake" +cmakeflags = [ + "-DENABLE_ZLIB=OFF", + "-DSET_TWEAK=OFF", + "-DENABLE_LUA=OFF", + "-DENABLE_LIBZFS=OFF", + "-DENABLE_IMAGE_LOGO=OFF", +] diff --git a/recipes/wip/sys-info/ffetch/recipe.toml b/recipes/wip/sys-info/ffetch/recipe.toml index 8b23aada9..4804efeec 100644 --- a/recipes/wip/sys-info/ffetch/recipe.toml +++ b/recipes/wip/sys-info/ffetch/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO compiled but not tested [source] git = "https://github.com/0l3d/ffetch" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/freshfetch/recipe.toml b/recipes/wip/sys-info/freshfetch/recipe.toml index 4e254a515..f5ea6adf1 100644 --- a/recipes/wip/sys-info/freshfetch/recipe.toml +++ b/recipes/wip/sys-info/freshfetch/recipe.toml @@ -1,8 +1,10 @@ #TODO mlua crate error [source] git = "https://github.com/K4rakara/freshfetch" +shallow_clone = true [build] template = "custom" script = """ +DYNAMIC_INIT cookbook_cargo_packages freshfetch """ diff --git a/recipes/wip/sys-info/macchina/recipe.toml b/recipes/wip/sys-info/macchina/recipe.toml index 524a1d555..0d2b80dba 100644 --- a/recipes/wip/sys-info/macchina/recipe.toml +++ b/recipes/wip/sys-info/macchina/recipe.toml @@ -1,5 +1,6 @@ #TODO if-addrs crate error [source] git = "https://github.com/Macchina-CLI/macchina" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/neofetch/recipe.toml b/recipes/wip/sys-info/neofetch/recipe.toml deleted file mode 100644 index a93875549..000000000 --- a/recipes/wip/sys-info/neofetch/recipe.toml +++ /dev/null @@ -1,11 +0,0 @@ -#TODO Add Redox OS on the Bash script -[source] -git = "https://github.com/dylanaraps/neofetch" -rev = "60d07dee6b76769d8c487a40639fb7b5a1a7bc85" -[build] -template = "custom" -script = """ -mkdir -pv "${COOKBOOK_STAGE}"/usr/bin -cp "${COOKBOOK_SOURCE}"/neofetch "${COOKBOOK_STAGE}"/usr/bin/neofetch -chmod +x "${COOKBOOK_STAGE}"/usr/bin/neofetch -""" diff --git a/recipes/wip/sys-info/pciutils/recipe.toml b/recipes/wip/sys-info/pciutils/recipe.toml index 9494d79fd..7e09fc5d3 100644 --- a/recipes/wip/sys-info/pciutils/recipe.toml +++ b/recipes/wip/sys-info/pciutils/recipe.toml @@ -1,8 +1,17 @@ -#TODO missing script for "make", see https://git.kernel.org/pub/scm/utils/pciutils/pciutils.git/tree/README#n52 +#TODO compile and test [source] tar = "https://mirrors.edge.kernel.org/pub/software/utils/pciutils/pciutils-3.9.0.tar.xz" [build] -template = "cmake" +template = "custom" dependencies = [ "zlib", ] +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +#MAKEFLAGS=( + # CROSS_COMPILE= +#) +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" #"${MAKEFLAGS[@]}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/sys-info/pfetch-rs/recipe.toml b/recipes/wip/sys-info/pfetch-rs/recipe.toml index 14a10962f..bfbeae855 100644 --- a/recipes/wip/sys-info/pfetch-rs/recipe.toml +++ b/recipes/wip/sys-info/pfetch-rs/recipe.toml @@ -1,5 +1,6 @@ #TODO if-addrs crate error [source] git = "https://github.com/Gobidev/pfetch-rs" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/process-viewer/recipe.toml b/recipes/wip/sys-info/process-viewer/recipe.toml index bf48af600..53de6ede0 100644 --- a/recipes/wip/sys-info/process-viewer/recipe.toml +++ b/recipes/wip/sys-info/process-viewer/recipe.toml @@ -1,6 +1,7 @@ -#TODO make GTK4 work +#TODO compile and test [source] git = "https://github.com/GuillaumeGomez/process-viewer" +shallow_clone = true [build] template = "cargo" dependencies = [ diff --git a/recipes/wip/sys-info/procps-ng/recipe.toml b/recipes/wip/sys-info/procps-ng/recipe.toml index fc247ee48..76f293260 100644 --- a/recipes/wip/sys-info/procps-ng/recipe.toml +++ b/recipes/wip/sys-info/procps-ng/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO build error, disable tests? [source] tar = "https://sourceforge.net/projects/procps-ng/files/Production/procps-ng-4.0.4.tar.xz/download" [build] template = "configure" +dependencies = ["ncursesw"] diff --git a/recipes/wip/sys-info/procs/recipe.toml b/recipes/wip/sys-info/procs/recipe.toml index da481c03c..7bb222481 100644 --- a/recipes/wip/sys-info/procs/recipe.toml +++ b/recipes/wip/sys-info/procs/recipe.toml @@ -1,5 +1,6 @@ #TODO async-io and rustix crates error (after cargo update) [source] git = "https://github.com/dalance/procs" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/rfetch/recipe.toml b/recipes/wip/sys-info/rfetch/recipe.toml index 3a1287cb8..5c7fad60e 100644 --- a/recipes/wip/sys-info/rfetch/recipe.toml +++ b/recipes/wip/sys-info/rfetch/recipe.toml @@ -1,5 +1,6 @@ #TODO nix crate error (after cargo update) [source] git = "https://github.com/kamui-fin/rfetch" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/rsftch/recipe.toml b/recipes/wip/sys-info/rsftch/recipe.toml index e0758a6ef..95abfab4a 100644 --- a/recipes/wip/sys-info/rsftch/recipe.toml +++ b/recipes/wip/sys-info/rsftch/recipe.toml @@ -1,5 +1,6 @@ #TODO source code error [source] git = "https://github.com/charklie/rsftch" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys-info/zeitfetch/recipe.toml b/recipes/wip/sys-info/zeitfetch/recipe.toml index a78a1c4c0..5d9188350 100644 --- a/recipes/wip/sys-info/zeitfetch/recipe.toml +++ b/recipes/wip/sys-info/zeitfetch/recipe.toml @@ -1,5 +1,6 @@ -#TODO not compiled or tested +#TODO compiled but not tested [source] git = "https://github.com/nidnogg/zeitfetch" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/sys/desktop-file-utils/recipe.toml b/recipes/wip/sys/desktop-file-utils/recipe.toml index 330e384a1..8da204616 100644 --- a/recipes/wip/sys/desktop-file-utils/recipe.toml +++ b/recipes/wip/sys/desktop-file-utils/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] git = "https://gitlab.freedesktop.org/xdg/desktop-file-utils" rev = "0.28" diff --git a/recipes/wip/term/zellij/recipe.toml b/recipes/wip/term/zellij/recipe.toml index ead436fc7..db3070f38 100644 --- a/recipes/wip/term/zellij/recipe.toml +++ b/recipes/wip/term/zellij/recipe.toml @@ -1,5 +1,6 @@ -#TODO openssl-sys crate error (after cargo update) +#TODO fs-set-times crate error [source] git = "https://github.com/zellij-org/zellij" +shallow_clone = true [build] template = "cargo" diff --git a/recipes/wip/tests/aflplusplus/recipe.toml b/recipes/wip/tests/aflplusplus/recipe.toml index 6c75309ef..c10274bc1 100644 --- a/recipes/wip/tests/aflplusplus/recipe.toml +++ b/recipes/wip/tests/aflplusplus/recipe.toml @@ -1,4 +1,4 @@ -#TODO add script for gnu make: +#TODO not compiled or tested # https://aflplus.plus/building/ # https://github.com/AFLplusplus/AFLplusplus/blob/stable/docs/INSTALL.md # has feature flags [source] @@ -7,3 +7,9 @@ rev = "v5.00c" shallow_clone = true [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" distrib -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/tests/arclight/recipe.toml b/recipes/wip/tests/arclight/recipe.toml deleted file mode 100644 index f39635ea3..000000000 --- a/recipes/wip/tests/arclight/recipe.toml +++ /dev/null @@ -1,6 +0,0 @@ -#TODO not compiled or tested -[source] -git = "https://github.com/josd/arclight" -shallow_clone = true -[build] -template = "cargo" diff --git a/recipes/wip/tests/catch2/recipe.toml b/recipes/wip/tests/catch2/recipe.toml index 713c04fa8..d2eeb49b5 100644 --- a/recipes/wip/tests/catch2/recipe.toml +++ b/recipes/wip/tests/catch2/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but not tested [source] git = "https://github.com/catchorg/Catch2" rev = "v3.13.0" diff --git a/recipes/wip/tests/check/recipe.toml b/recipes/wip/tests/check/recipe.toml index 2f1021a7b..e0c09710b 100644 --- a/recipes/wip/tests/check/recipe.toml +++ b/recipes/wip/tests/check/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO compiled but not tested [source] tar = "https://github.com/libcheck/check/releases/download/0.15.2/check-0.15.2.tar.gz" [build] diff --git a/recipes/wip/tests/cunit/recipe.toml b/recipes/wip/tests/cunit/recipe.toml index fc1f239f9..6c43d714e 100644 --- a/recipes/wip/tests/cunit/recipe.toml +++ b/recipes/wip/tests/cunit/recipe.toml @@ -1,5 +1,8 @@ #TODO not compiled or tested [source] tar = "https://downloads.sourceforge.net/project/cunit/CUnit/2.1-3/CUnit-2.1-3.tar.bz2" +script = """ +autotools_recursive_regenerate +""" [build] template = "configure" diff --git a/recipes/wip/tests/gtest/recipe.toml b/recipes/wip/tests/gtest/recipe.toml index 822359e98..eb16499bb 100644 --- a/recipes/wip/tests/gtest/recipe.toml +++ b/recipes/wip/tests/gtest/recipe.toml @@ -1,4 +1,4 @@ -#TODO not compiled or tested +#TODO compiled but not tested # build instructions: https://github.com/google/googletest/blob/main/googletest/README.md [source] tar = "https://github.com/google/googletest/releases/download/v1.17.0/googletest-1.17.0.tar.gz" diff --git a/recipes/wip/tests/memtester/recipe.toml b/recipes/wip/tests/memtester/recipe.toml index c4535b095..9bf009442 100644 --- a/recipes/wip/tests/memtester/recipe.toml +++ b/recipes/wip/tests/memtester/recipe.toml @@ -1,5 +1,11 @@ -#TODO add script for gnu make: https://pyropus.ca./software/memtester/ +#TODO compiled but not tested [source] tar = "https://pyropus.ca./software/memtester/old-versions/memtester-4.7.1.tar.gz" [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/tests/pjdfstest-rs/recipe.toml b/recipes/wip/tests/pjdfstest-rs/recipe.toml new file mode 100644 index 000000000..3465e4958 --- /dev/null +++ b/recipes/wip/tests/pjdfstest-rs/recipe.toml @@ -0,0 +1,8 @@ +#TODO port exacl crate +[source] +git = "https://github.com/saidsay-so/pjdfstest" +shallow_clone = true +[build] +template = "cargo" +cargopath = "rust" +compiler = "no-lto" diff --git a/recipes/wip/tests/pjdfstest/recipe.toml b/recipes/wip/tests/pjdfstest/recipe.toml index c8219daad..4507d40a3 100644 --- a/recipes/wip/tests/pjdfstest/recipe.toml +++ b/recipes/wip/tests/pjdfstest/recipe.toml @@ -1,6 +1,7 @@ -#TODO not compiled or tested +#TODO compilation error, warnings treated as errors [source] git = "https://github.com/pjd/pjdfstest" +rev = "85a8aea" shallow_clone = true script = """ autotools_recursive_regenerate diff --git a/recipes/wip/tests/radamsa/recipe.toml b/recipes/wip/tests/radamsa/recipe.toml index 0609a01cb..ba2c776fc 100644 --- a/recipes/wip/tests/radamsa/recipe.toml +++ b/recipes/wip/tests/radamsa/recipe.toml @@ -1,5 +1,11 @@ -#TODO add script for gnu make:https://gitlab.com/akihe/radamsa#building-radamsa +#TODO not compiled or tested [source] tar = "https://gitlab.com/akihe/radamsa/-/archive/v0.7/radamsa-v0.7.tar.bz2" [build] template = "custom" +script = """ +rsync -av --delete "${COOKBOOK_SOURCE}/" ./ +DYNAMIC_INIT +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" +""" diff --git a/recipes/wip/tests/sqlite-test/recipe.toml b/recipes/wip/tests/sqlite-test/recipe.toml index c1f86d052..3b75a3454 100644 --- a/recipes/wip/tests/sqlite-test/recipe.toml +++ b/recipes/wip/tests/sqlite-test/recipe.toml @@ -1,3 +1,4 @@ +#TODO test [source] git = "https://github.com/sqlite/sqlite" shallow_clone = true diff --git a/recipes/wip/tests/zzuf/recipe.toml b/recipes/wip/tests/zzuf/recipe.toml index 2b4d3cc5a..cd07a2c66 100644 --- a/recipes/wip/tests/zzuf/recipe.toml +++ b/recipes/wip/tests/zzuf/recipe.toml @@ -1,4 +1,4 @@ -#TODO compile and test +#TODO can't recognize redox [source] tar = "https://github.com/samhocevar/zzuf/releases/download/v0.15/zzuf-0.15.tar.bz2" [build] diff --git a/recipes/wip/time/zonetimeline/recipe.toml b/recipes/wip/time/zonetimeline/recipe.toml new file mode 100644 index 000000000..da46a0530 --- /dev/null +++ b/recipes/wip/time/zonetimeline/recipe.toml @@ -0,0 +1,6 @@ +#TODO compile and test +[source] +git = "https://github.com/findyourexit/zonetimeline-tui" +shallow_clone = true +[build] +template = "cargo" diff --git a/recipes/wip/vm/qemu/recipe.toml b/recipes/wip/vm/qemu/recipe.toml index 2694bf73d..5a9440c3d 100644 --- a/recipes/wip/vm/qemu/recipe.toml +++ b/recipes/wip/vm/qemu/recipe.toml @@ -1,4 +1,5 @@ -#TODO: runtime crash +#STATUS: redox guest working in terminal mode and gtk frontend +#TODO: fix sdl frontend and linux guest boot [source] git = "https://github.com/jackpot51/qemu.git" shallow_clone = true diff --git a/recipes/wip/wasm/wasmtime/recipe.toml b/recipes/wip/wasm/wasmtime/recipe.toml index bf417cf53..9740a73a8 100644 --- a/recipes/wip/wasm/wasmtime/recipe.toml +++ b/recipes/wip/wasm/wasmtime/recipe.toml @@ -1,8 +1,8 @@ -# TODO (willnode) push changes upstream -# TODO upgrade to latest v47 +# TODO upstream what we can: see https://gitlab.redox-os.org/redox-os/redox/-/work_items/1839 +# TODO upgrade to v49.0.2 (curently on v49.0.0) [source] -git = "https://github.com/willnode/wasmtime" -branch = "v36-redox" +git = "https://github.com/auronandace/wasmtime" +branch = "redox-49" shallow_clone = true [build] diff --git a/recipes/wip/wayland/gamescope-sdl/recipe.toml b/recipes/wip/wayland/gamescope-sdl/recipe.toml index e173f1023..dab62f215 100644 --- a/recipes/wip/wayland/gamescope-sdl/recipe.toml +++ b/recipes/wip/wayland/gamescope-sdl/recipe.toml @@ -1,3 +1,4 @@ +#TODO fix libvulkan dep #TODO determine sdl2 backend dependencies from meson log [source] git = "https://github.com/ValveSoftware/gamescope" @@ -19,4 +20,7 @@ mesonflags = [ ] dependencies = [ "sdl2", + "libx11", + "libwayland", + "libvulkan", ] diff --git a/recipes/wip/wayland/wev/recipe.toml b/recipes/wip/wayland/wev/recipe.toml index c717c6fae..96401b895 100644 --- a/recipes/wip/wayland/wev/recipe.toml +++ b/recipes/wip/wayland/wev/recipe.toml @@ -1,5 +1,4 @@ #TODO compile and test -# probably wrong gnu make command [source] git = "https://git.sr.ht/~sircmpwn/wev" rev = "1.1.0" @@ -13,5 +12,6 @@ dependencies = [ script = """ rsync -av --delete "${COOKBOOK_SOURCE}/" ./ DYNAMIC_INIT -"${COOKBOOK_MAKE}" install -j"$COOKBOOK_MAKE_JOBS" "${MAKEFLAGS[@]}" DESTDIR="$COOKBOOK_STAGE/usr" +"${COOKBOOK_MAKE}" -j "${COOKBOOK_MAKE_JOBS}" +"${COOKBOOK_MAKE}" install DESTDIR="${COOKBOOK_STAGE}/usr" """ diff --git a/recipes/wip/web/servo/recipe.toml b/recipes/wip/web/servo/recipe.toml index f03ec50b7..1444c37c6 100644 --- a/recipes/wip/web/servo/recipe.toml +++ b/recipes/wip/web/servo/recipe.toml @@ -1,6 +1,6 @@ [source] git = "https://gitlab.redox-os.org/redox-os/servo.git" -branch = "redox" +branch = "redox-0.7.0" [build] template = "custom" @@ -12,10 +12,6 @@ dependencies = [ "mesa", "zlib", ] -dev-dependencies = [ - "llvm21.dev", - "host:libarchive", # workaround for cmake error -] script = """ DYNAMIC_INIT @@ -23,30 +19,40 @@ cp -v "${COOKBOOK_RECIPE}/.servobuild" "${COOKBOOK_SOURCE}/.servobuild" # jemalloc specific configuration export JEMALLOC_SYS_WITH_LG_PAGE=16 + +if [[ "$REDOXER_USE_CLANG" != "1" && "$REDOXER_USE_CLANG" != "true" ]]; then + export CC="${GNU_TARGET}-gcc" + export CXX="${GNU_TARGET}-g++" + export HOST_CC="gcc" + export HOST_CXX="g++" +else + export CC="${GNU_TARGET}-clang" + export CXX="${GNU_TARGET}-clang++ -stdlib=libstdc++" + export HOST_CC="clang" + export HOST_CXX="clang++" +fi export TARGET_CC="$CC" export TARGET_CXX="$CXX" -export TARGET_AR="$AR" +export MOZJS_FROM_SOURCE=1 # pkg-config crate can only recognize one path to pkgconfig export PKG_CONFIG_PATH_x86_64_unknown_redox="${COOKBOOK_SYSROOT}/lib/pkgconfig" export PKG_CONFIG_SYSROOT_DIR_x86_64_unknown_redox="${COOKBOOK_SYSROOT}/lib/pkgconfig" # rsync -a -v ${COOKBOOK_SYSROOT}/usr/share/pkgconfig/*.pc ${COOKBOOK_SYSROOT}/lib/pkgconfig/ -#TODO: mozjs-sys and mozangle uses clang, it won't know our prefix C libraries, so here's the workaround -PREFIX_INCLUDE="$COOKBOOK_HOST_SYSROOT/$TARGET/include" -export CLANGFLAGS="-I $PREFIX_INCLUDE/c++/13.2.0 -I $PREFIX_INCLUDE/c++/13.2.0/$TARGET -I $PREFIX_INCLUDE/c++/13.2.0/backward -I $PREFIX_INCLUDE" - #Mozjs specifics +export CCACHE="$CC_WRAPPER" unset CC_WRAPPER -export CARGO_MAKEFLAGS="-j $COOKBOOK_MAKE_JOBS" CCACHE="sccache" +export CARGO_MAKEFLAGS="-j $COOKBOOK_MAKE_JOBS" COOKBOOK_CARGO_PATH="ports/servoshell" cookbook_cargo # resources packaging -mkdir -p ${COOKBOOK_STAGE}/usr/lib/servo/bin -mv ${COOKBOOK_STAGE}/usr/bin/servo ${COOKBOOK_STAGE}/usr/lib/servo/bin/ -ln -s ../lib/servo/bin/servo ${COOKBOOK_STAGE}/usr/bin/servo -rsync -a -v ${COOKBOOK_SOURCE}/resources ${COOKBOOK_STAGE}/usr/lib/servo/ +mkdir -p "${COOKBOOK_STAGE}/usr/lib/servo/bin" "${COOKBOOK_STAGE}/usr/share/applications" +mv "${COOKBOOK_STAGE}/usr/bin/servoshell" "${COOKBOOK_STAGE}/usr/lib/servo/bin/" +rsync -a -v "${COOKBOOK_SOURCE}/resources" "${COOKBOOK_STAGE}/usr/lib/servo/" +cp "${COOKBOOK_RECIPE}/servo.desktop" "${COOKBOOK_STAGE}/usr/share/applications/servo.desktop" +cp "${COOKBOOK_RECIPE}/servo.sh" "${COOKBOOK_STAGE}/usr/bin/servo" """ [package] diff --git a/recipes/wip/web/servo/servo.desktop b/recipes/wip/web/servo/servo.desktop new file mode 100644 index 000000000..71f718f6e --- /dev/null +++ b/recipes/wip/web/servo/servo.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Servo +Comment=Servoshell +Exec=servo +Icon=/usr/lib/servo/resources/servo_64.png +Terminal=false +Type=Application +StartupNotify=true +Categories=Network;WebBrowser; +NoDisplay=true diff --git a/recipes/wip/web/servo/servo.sh b/recipes/wip/web/servo/servo.sh new file mode 100755 index 000000000..7ee4fc254 --- /dev/null +++ b/recipes/wip/web/servo/servo.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +# bug within egui/llvm causing broken fonts +export GALLIUM_DRIVER=softpipe + +exec /usr/lib/servo/bin/servoshell diff --git a/recipes/wip/web/webkitgtk3/recipe.toml b/recipes/wip/web/webkitgtk3/recipe.toml index b676f890c..2db5ce321 100644 --- a/recipes/wip/web/webkitgtk3/recipe.toml +++ b/recipes/wip/web/webkitgtk3/recipe.toml @@ -58,8 +58,8 @@ cookbook_cmake patchelf --replace-needed "${COOKBOOK_SYSROOT}/usr/lib/libsqlite3.so" "libsqlite3.so" "${COOKBOOK_STAGE}/usr/lib/libwebkit2gtk-4.1.so" patchelf --replace-needed "${COOKBOOK_SYSROOT}/usr/lib/libsqlite3.so" "libsqlite3.so" "${COOKBOOK_STAGE}/usr/libexec/webkit2gtk-4.1/MiniBrowser" mkdir -p "${COOKBOOK_STAGE}/usr/bin" "${COOKBOOK_STAGE}/usr/share/applications" -ln -sr "${COOKBOOK_STAGE}/usr/libexec/webkit2gtk-4.1/MiniBrowser" "${COOKBOOK_STAGE}/usr/bin/MiniBrowser" cp "${COOKBOOK_RECIPE}/webkit.desktop" "${COOKBOOK_STAGE}/usr/share/applications/webkit.desktop" +cp "${COOKBOOK_RECIPE}/webkit.sh" "${COOKBOOK_STAGE}/usr/bin/webkit" """ [package] diff --git a/recipes/wip/web/webkitgtk3/redox.patch b/recipes/wip/web/webkitgtk3/redox.patch index 8589384ee..7f5bc2e84 100644 --- a/recipes/wip/web/webkitgtk3/redox.patch +++ b/recipes/wip/web/webkitgtk3/redox.patch @@ -684,3 +684,15 @@ diff -ruwN source/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp if (disableDMABuf && strcmp(disableDMABuf, "0")) return; +diff -ruwN source/Source/WTF/wtf/FileSystem.cpp source-new/Source/WTF/wtf/FileSystem.cpp +--- source/Source/WTF/wtf/FileSystem.cpp 2025-03-21 11:07:10.828055100 +0000 ++++ source-new/Source/WTF/wtf/FileSystem.cpp 2026-10-03 11:58:07.275782479 +0000 +@@ -360,7 +360,7 @@ + mprotect(map, bytesSize, PROT_READ); + + // Flush (asynchronously) to file, turning this into clean memory. +- msync(map, bytesSize, MS_ASYNC); ++ // msync(map, bytesSize, MS_ASYNC); // redox: msync unimplemented + #endif + } + diff --git a/recipes/wip/web/webkitgtk3/webkit.desktop b/recipes/wip/web/webkitgtk3/webkit.desktop index b3c4fd074..1ff81bafd 100644 --- a/recipes/wip/web/webkitgtk3/webkit.desktop +++ b/recipes/wip/web/webkitgtk3/webkit.desktop @@ -1,8 +1,8 @@ [Desktop Entry] Name=WebKit Comment=WebKit GTK Browser -Exec=MiniBrowser -Icon=/usr/share/ui/icons/apps/internet-web-browser.png +Exec=webkit +Icon=/usr/share/icons/apps/internet-web-browser.png Terminal=false Type=Application StartupNotify=true diff --git a/recipes/wip/web/webkitgtk3/webkit.sh b/recipes/wip/web/webkitgtk3/webkit.sh new file mode 100755 index 000000000..4855899ef --- /dev/null +++ b/recipes/wip/web/webkitgtk3/webkit.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash + +SCHEMA_DIR="/usr/share/glib-2.0/schemas" +COMPILED_SCHEMA="$SCHEMA_DIR/gschemas.compiled" + +if [ ! -f "$COMPILED_SCHEMA" ]; then + echo "GSettings schemas are not compiled. Please run" + echo "sudo glib-compile-schemas $SCHEMA_DIR" + # otherwise css layout will be broken + exit 1 +fi + +# If webkit stuck launching, uncomment +# export GTK_DEBUG=interactive + +exec /usr/libexec/webkit2gtk-4.1/MiniBrowser diff --git a/src/bin/repo/main.rs b/src/bin/repo/main.rs index 777a13078..8d9a07a48 100644 --- a/src/bin/repo/main.rs +++ b/src/bin/repo/main.rs @@ -11,7 +11,7 @@ use cookbook::cook::tree::{self, DisplayOptions, TreeData, TreeItem, TreeOptions use cookbook::cook::tui::join_logs; use cookbook::cook::{fetch_repo, ident}; use cookbook::recipe::{ - CookRecipe, SourceRecipe, recipes_flatten_package_names, recipes_mark_as_deps, + CookRecipe, RecipeRule, SourceRecipe, recipes_flatten_package_names, recipes_mark_as_deps, validate_filesystem_rules, }; use cookbook::{Error, Result, staged_pkg}; @@ -625,15 +625,22 @@ fn parse_args(args: Vec) -> Result<(CliConfig, CliCommand, Vec = Vec::new(); let mut binary_names: Vec = Vec::new(); - let mut special_rules: HashMap = HashMap::new(); - let default_rule = if repo_binary { "binary" } else { "source" }; + let mut special_rules: HashMap = HashMap::new(); + let default_rule = RecipeRule::from_repo_binary(repo_binary); for (recipe_name, recipe_lock) in lock.iter().filter(|(_, v)| v.fsrule.is_some()) { let Ok(recipe_name) = PackageName::new(recipe_name) else { continue; }; - let rule = recipe_lock.fsrule.as_ref().unwrap(); - special_rules.insert(recipe_name.clone(), rule.to_string()); + let rule = recipe_lock.fsrule.as_deref().unwrap(); + let Ok(rule) = RecipeRule::try_from(rule) else { + bail_other_err!( + "Invalid pkg config {} = {:?}\nExpecting either 'source', 'local', 'binary' or 'ignore'", + recipe_name.as_str(), + rule + ); + }; + special_rules.insert(recipe_name.clone(), rule); // lock rules does not recurse as it's done already in the file } if let Some(conf) = config.filesystem.as_ref() { @@ -643,80 +650,96 @@ fn parse_args(args: Vec) -> Result<(CliConfig, CliCommand, Vec = source_names.into_iter().collect(); let binary_names: HashSet = binary_names.into_iter().collect(); + let recipe_names_with_pkg = if command.is_building() || command.is_pushing() { + // include all package deps (TODO: ignored recipes should be exempted) + CookRecipe::get_package_deps_recursive(&recipe_names, true)? + } else { + recipe_names.clone() + }; + // These are list that derived from recipe_names - let mut source_recipe_names: Vec = Vec::new(); - let mut binary_recipe_names: Vec = Vec::new(); - let mut ignore_recipe_names: Vec = Vec::new(); - for recipe_name in recipe_names.iter() { - if source_names.contains(recipe_name) { - source_recipe_names.push(recipe_name.clone()); - } else if binary_names.contains(recipe_name) { - binary_recipe_names.push(recipe_name.clone()); + let mut recipe_name_rules = BTreeMap::new(); + for recipe_name in recipe_names_with_pkg { + let new_rule = if let Some(&rule) = special_rules.get(&recipe_name) { + rule + } else if source_names.contains(&recipe_name) { + RecipeRule::Source + } else if binary_names.contains(&recipe_name) { + RecipeRule::Binary + } else if repo_binary { + RecipeRule::Binary } else { - if special_rules - .get(recipe_name) - .is_some_and(|s| s == "ignore") - { - ignore_recipe_names.push(recipe_name.clone()); - } else if repo_binary { - binary_recipe_names.push(recipe_name.clone()); - } else { - source_recipe_names.push(recipe_name.clone()); - } - } + RecipeRule::Source + }; + recipe_name_rules.insert(recipe_name, new_rule); } - if command.is_building() || command.is_pushing() { - source_recipe_names = - CookRecipe::get_package_deps_recursive(&source_recipe_names, true)?; - binary_recipe_names = - CookRecipe::get_package_deps_recursive(&binary_recipe_names, true)?; + // apply rules on root recipe names + apply_special_rules_by_names( + &special_rules, + default_rule, + &source_names, + &binary_names, + &mut recipe_name_rules, + &config, + ); + + macro_rules! filter_recipes { + ($rules:expr, $pat:pat) => { + $rules + .iter() + .filter_map(|(k, v)| { + if matches!(v, $pat) { + Some(k.clone()) + } else { + None + } + }) + .collect::>() + }; } + // split map into lists of separate recipes names to apply different build deps logic + let source_recipe_names = + filter_recipes!(recipe_name_rules, RecipeRule::Source | RecipeRule::Local); + let binary_recipe_names = filter_recipes!(recipe_name_rules, RecipeRule::Binary); + let ignore_recipe_names = filter_recipes!(recipe_name_rules, RecipeRule::Ignore); + let mut recipes = if matches!(config.all, Some(AllOption::AllBinaries)) { // Removes all source-compiled recipes Vec::new() } else if command.is_building() || command.is_pushing() { // Pushing do not need dev deps, so does binary recipes at building let include_dev = command.is_building(); - if include_dev && default_rule == "source" { - // let's cover a very specific case, binary -> source -> binary -> dev - // in this case, we need to move that "source" to "binary", because - // that would include dev from its binary child, which is unnecessary - let mut i = 0; - while i < source_recipe_names.len() { - let name = &source_recipe_names[i]; - match special_rules.get(name) { - Some(s) if s.as_str() == "source" && binary_names.contains(name) => { - let bin = source_recipe_names.remove(i); - binary_recipe_names.push(bin); - continue; - } - _ => {} - } - i += 1; - } - } CookRecipe::get_build_deps_recursive(&source_recipe_names, include_dev)? } else { CookRecipe::from_list(source_recipe_names.clone())? @@ -734,36 +757,15 @@ fn parse_args(args: Vec) -> Result<(CliConfig, CliCommand, Vec { - // both lists: flip logic - if repo_binary { "source" } else { "binary" } - } - (true, false) => "source", - (false, true) => "binary", - (false, false) => default_rule, - }; - if recipe.name.is_host() && rule == "binary" { - // host recipe binaries is currently not supported - continue; - } - - recipe.apply_filesystem_config(rule)?; - } + // reapply rules again for build/package deps + apply_special_rules( + &special_rules, + default_rule, + &source_names, + &binary_names, + &mut recipes, + &config, + )?; validate_filesystem_rules(&recipes)?; @@ -790,11 +792,62 @@ fn parse_args(args: Vec) -> Result<(CliConfig, CliCommand, Vec, + default_rule: RecipeRule, + source_names: &HashSet, + binary_names: &HashSet, + recipes: &mut Vec, + config: &CliConfig, +) -> Result<()> { + for recipe in recipes.iter_mut() { + if !recipe.rule.is_empty() { + continue; + } + if let Some(&special_rule) = special_rules.get(recipe.canon_recipe_name().without_prefix()) + { + if recipe.name.is_host() && special_rule == RecipeRule::Binary { + // host recipe binaries is currently not supported + continue; + } + recipe.apply_filesystem_config(special_rule.into())?; + continue; + } + let rule = match ( + source_names.contains(&recipe.name), + binary_names.contains(&recipe.name), + ) { + (true, true) => { + // both lists: flip logic + default_rule.inverted_default() + } + (true, false) => RecipeRule::Source, + (false, true) => RecipeRule::Binary, + (false, false) => default_rule, + }; + if recipe.name.is_host() && rule == RecipeRule::Binary { + // host recipe binaries is currently not supported + continue; + } + + recipe.apply_filesystem_config(rule.into())?; + } + + // check if binary repositories are valid + if recipes.iter().any(|r| r.rule == "binary") { let (_, repository) = fetch_repo::get_binary_repo(); for recipe in recipes.iter_mut() { if recipe.rule == "binary" && !repository.packages.contains_key(recipe.name.as_str()) { - if config.cook.verbose && !(config.cook.tui && command == CliCommand::Cook) { + if config.cook.verbose { // TODO: this should be printed at fetch log, not here println!( "DEBUG: Recipe {:?} has no binary package", @@ -807,12 +860,56 @@ fn parse_args(args: Vec) -> Result<(CliConfig, CliCommand, Vec, + default_rule: RecipeRule, + source_names: &HashSet, + binary_names: &HashSet, + recipes: &mut BTreeMap, + config: &CliConfig, +) { + for (recipe, rule) in recipes.iter_mut() { + if let Some(&special_rule) = special_rules.get(recipe.without_prefix()) { + if recipe.is_host() && special_rule == RecipeRule::Binary { + // host recipe binaries is currently not supported + continue; + } + *rule = special_rule; + continue; + } + let new_rule = match (source_names.contains(recipe), binary_names.contains(recipe)) { + (true, true) => { + // both lists: flip logic + default_rule.inverted_default() + } + (true, false) => RecipeRule::Source, + (false, true) => RecipeRule::Binary, + (false, false) => default_rule, + }; + if recipe.is_host() && new_rule == RecipeRule::Binary { + // host recipe binaries is currently not supported + continue; + } + + *rule = new_rule; } - Ok((config, command, recipes)) + // check if binary rules are valid + if recipes.values().any(|&r| r == RecipeRule::Binary) { + let (_, repository) = fetch_repo::get_binary_repo(); + for (name, rule) in recipes.iter_mut() { + if *rule == RecipeRule::Binary && !repository.packages.contains_key(name.as_str()) { + if config.cook.verbose { + // TODO: this should be printed at fetch log, not here + println!("DEBUG: Recipe {:?} has no binary package", name.as_str()); + } + *rule = RecipeRule::Source; + } + } + } } fn handle_fetch( @@ -1142,4 +1239,10 @@ macro_rules! bail_options_err { }; } +macro_rules! bail_other_err { + ($($arg:tt)*) => { + return Err(cookbook::Error::Other(format!($($arg)*))) + }; +} use bail_options_err; +use bail_other_err; diff --git a/src/cook/cook_build.rs b/src/cook/cook_build.rs index 909bdcaff..c059dc125 100644 --- a/src/cook/cook_build.rs +++ b/src/cook/cook_build.rs @@ -9,7 +9,6 @@ use crate::cook::package::{package_source_paths, package_target}; use crate::cook::{fetch, fs, pty::PtyOut, script::*}; use crate::recipe::BuildCompiler; use crate::recipe::{AutoDeps, BuildKind, CookRecipe, OptionalPackageRecipe, Recipe}; -use std::io::Read; use std::{ collections::{BTreeSet, VecDeque}, path::{Path, PathBuf}, @@ -470,7 +469,7 @@ pub fn build( BuildCompiler::Gcc | BuildCompiler::GccNoLTO => { command.env("REDOXER_USE_CLANG", "0"); } - BuildCompiler::Clang | BuildCompiler::ClangNoLTO => { + BuildCompiler::Clang | BuildCompiler::ClangNoLTO | BuildCompiler::Wasm => { command.env("REDOXER_USE_CLANG", "1"); } _ => {} @@ -481,6 +480,9 @@ pub fn build( } _ => {} } + if matches!(compiler, BuildCompiler::Wasm) { + command.env("TARGET", "wasm32-wasip1"); + } }; command.env("COOKBOOK_MAKE_JOBS", cli_jobs.to_string()); if cook_config.verbose_cmd { @@ -819,16 +821,14 @@ pub fn build_remote( } fn hint_incorrect_pkey(logger: &PtyOut, source_pubkey: &Path, source_pkgar: &Path) -> Option<()> { - // TODO: Move to pkgar - let mut file = std::fs::File::open(source_pkgar).ok()?; - let mut buffer = vec![0u8; pkgar_core::HEADER_SIZE]; - file.read_exact(&mut buffer).ok()?; log_to_pty!( logger, "DEBUG: Pkgar key mismatch, hint:\n - expected: {:?}\n - current: {:?}", - blake3::Hash::from_bytes(unsafe { - pkgar_core::Header::new_unchecked(&buffer).ok()?.public_key - }) + blake3::Hash::from_bytes( + pkgar_keys::PublicKeyFile::from_header_path(source_pkgar) + .ok()? + .pkey + ) .to_hex() .to_string(), blake3::Hash::from_bytes(PublicKeyFile::open(source_pubkey).ok()?.pkey) diff --git a/src/cook/script.rs b/src/cook/script.rs index 12d94ddc4..5b940b59e 100644 --- a/src/cook/script.rs +++ b/src/cook/script.rs @@ -5,7 +5,7 @@ pub(crate) static SHARED_PRESCRIPT: &str = r#" # Build dynamically function DYNAMIC_INIT { case "${TARGET}" in - "riscv64gc-unknown-redox") + "riscv64gc-unknown-redox" | "wasm32-wasip1") [ -z "${COOKBOOK_VERBOSE}" ] || echo "WARN: ${TARGET} does not support dynamic linking." >&2 return ;; @@ -36,6 +36,7 @@ function DYNAMIC_INIT { # TODO: check paths for spaces export LDFLAGS="${USER_LDFLAGS}-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib -L${COOKBOOK_SYSROOT}/lib -Wl,--export-dynamic" rustflags="-C target-feature=-crt-static -L native=${COOKBOOK_SYSROOT}/lib -C link-arg=-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib" + REDOXER_RUSTFLAGS_KEY=${REDOXER_RUSTFLAGS_KEY:-RUSTFLAGS} export "${REDOXER_RUSTFLAGS_KEY}=${!REDOXER_RUSTFLAGS_KEY} ${rustflags}" export COOKBOOK_DYNAMIC=1 @@ -414,12 +415,25 @@ function cookbook_python { "#; pub(crate) static BUILD_POSTSCRIPT: &str = r#" +STRIP="${GNU_TARGET}-strip" +STRIP_ARGS="-v" + +if [[ "$REDOXER_USE_CLANG" = "1" || "$REDOXER_USE_CLANG" = "true" ]]; then + STRIP="llvm-strip" + STRIP_ARGS="--verbose" +elif [[ "$REDOXER_USE_LTO" = "1" || "$REDOXER_USE_LTO" = "true" ]]; then + GCC_BIN=$(command -v "${GNU_TARGET}-gcc") + GCC_VER=$("${GNU_TARGET}-gcc" -dumpfullversion) + PLUGIN_PATH=$(realpath "$(dirname "$GCC_BIN")/../libexec/gcc/${GNU_TARGET}/${GCC_VER}/liblto_plugin.so") + [ -f "$PLUGIN_PATH" ] && STRIP_ARGS="--plugin=${PLUGIN_PATH} -v" || echo "DEBUG: $PLUGIN_PATH not found" +fi + # Strip binaries for dir in "${COOKBOOK_STAGE}/bin" "${COOKBOOK_STAGE}/usr/bin" "${COOKBOOK_STAGE}/libexec" "${COOKBOOK_STAGE}/usr/libexec" do if [ -d "${dir}" ] && [ -z "${COOKBOOK_NOSTRIP}" ] then - find "${dir}" -type f -exec "${GNU_TARGET}-strip" -v {} ';' + find "${dir}" -type f -exec "${STRIP}" ${STRIP_ARGS} {} ';' fi done @@ -431,7 +445,7 @@ do find "${dir}" -type f -name '*.la' -exec rm -fv {} ';' if [ -z "${COOKBOOK_NOSTRIP}" ] then - find "${dir}" -type f -exec "${GNU_TARGET}-strip" --strip-debug -v {} ';' + find "${dir}" -type f -exec "${STRIP}" ${STRIP_ARGS} --strip-debug {} ';' fi fi done diff --git a/src/recipe.rs b/src/recipe.rs index a66e45249..3a4cf18af 100644 --- a/src/recipe.rs +++ b/src/recipe.rs @@ -190,6 +190,8 @@ pub enum BuildCompiler { ClangNoLTO, #[serde(rename = "no-lto")] NoLTO, + #[serde(rename = "wasm")] + Wasm, } impl BuildRecipe { @@ -215,6 +217,56 @@ impl BuildRecipe { } } +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum RecipeRule { + Source, + Binary, + Local, + Ignore, +} + +impl RecipeRule { + pub fn inverted_default(self) -> Self { + if self == RecipeRule::Binary { + RecipeRule::Source + } else { + RecipeRule::Binary + } + } + pub fn from_repo_binary(repo_binary: bool) -> Self { + if repo_binary { + RecipeRule::Binary + } else { + RecipeRule::Source + } + } +} + +impl<'a> TryFrom<&'a str> for RecipeRule { + type Error = &'a str; + + fn try_from(value: &'a str) -> Result { + Ok(match value { + "source" => Self::Source, + "binary" => Self::Binary, + "local" => Self::Local, + "ignore" => Self::Ignore, + v => return Err(v), + }) + } +} + +impl From for &'static str { + fn from(value: RecipeRule) -> Self { + match value { + RecipeRule::Source => "source", + RecipeRule::Binary => "binary", + RecipeRule::Local => "local", + RecipeRule::Ignore => "ignore", + } + } +} + #[derive(Debug, Clone, PartialEq)] pub struct CookRecipe { pub name: PackageName, @@ -223,6 +275,7 @@ pub struct CookRecipe { pub target: &'static str, /// If false, it's listed on install config pub is_deps: bool, + // TODO: change to Option pub rule: String, /// whether if this recipe is pinned from cookbook.lock pub pinned: bool, @@ -275,6 +328,8 @@ impl CookRecipe { .into_iter() .filter_map(fn_map) .collect(); + // package deps is not applicable to host recipes + recipe.package.dependencies = Vec::new() } Ok(Self { name, @@ -642,7 +697,7 @@ pub fn validate_filesystem_rules(recipes: &[CookRecipe]) -> crate::Result<()> { let ignored: BTreeSet = recipes .iter() .filter(|r| r.rule == "ignore") - .map(|r| r.canon_recipe_name().without_prefix().to_string()) + .map(|r| r.name.without_prefix().to_string()) .collect(); if ignored.is_empty() { return Ok(()); @@ -651,9 +706,10 @@ pub fn validate_filesystem_rules(recipes: &[CookRecipe]) -> crate::Result<()> { if recipe.rule == "ignore" { continue; } - if recipe.recipe.build.kind == BuildKind::None - || recipe.recipe.build.kind == BuildKind::Remote - { + if matches!( + recipe.recipe.build.kind, + BuildKind::None | BuildKind::Remote + ) { // Not built from source, so build dependencies are irrelevant. continue; }