Commit graph

85 commits

Author SHA1 Message Date
Victor Fuentes f17cba032e
Create native gcc 2024-10-29 11:43:51 -07:00
Austreelis 866b8902c9 fix(lib): swapped entries in test dag.sort.topological."sorts a graph" (#9)
I figure it's a simple typo. This test expects entries `"a"`, `"b"`, `"c"`, `"d"` to be lexicographically sorted but fails. The actual result is that entries are sorted in this order: `c, b, a, d`. This is because the test adds the entry `"b" = lib.dag.entry.between [ "c" ] [ "a" ] "b"`, i.e. after `"c"` and before `"a"`. I haven't checked if it was a logic error in the sort implementation, as other pieces of labs rely on it (and use `lib.dag.entry.between` with the arguments flipped relative to the test, which makes sense), and the arguments of the function `lib.dag.entry.between` are named "after", *then* "before".

Co-authored-by: Austreelis <dev.austreelis@swhaele.net>
Reviewed-on: auxolotl/labs#9
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Austreelis <austreelis@noreply.git.auxolotl.org>
Co-committed-by: Austreelis <austreelis@noreply.git.auxolotl.org>
2024-10-08 18:44:31 +00:00
Victor Fuentes d7762a5a78 add bootstraped x86_64-linux cross compiled gcc (#8)
Work in progress cross compiler for x86_64. I've managed to get a full x86_64 gcc using the binaries built from foundation, and am working on implementing their builds into tidepool.

### Bootstrapping steps
0) Start with i686 tools (gcc, binutils, musl, etc)
1) Build binutils targeting x86_64-linux
2) Build a minimal gcc cross compiler using the cross binutils. This minimal cross compiler does not have support for libc, so is pretty much only useful for building musl or glibc.
3) Use the minimal cross compiler to build x86_64-linux glibc or musl
4) Now that we have a cross compiler and x86_64-linux libc, we can build gcc for the target architecture!
5) Profit! We can now build anything x86_64 using our gcc compiler!

Co-authored-by: Jake Hamilton <jake.hamilton@hey.com>
Reviewed-on: auxolotl/labs#8
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Victor Fuentes <vmfuentes64@gmail.com>
Co-committed-by: Victor Fuentes <vmfuentes64@gmail.com>
2024-09-22 02:55:02 +00:00
Austreelis cadfaabc85 "Fix lib.types.derivations.shell's check" (#7)
"`lib.types.derivations.shell` uses `lib.packages.isDerivation` but didn't passed an argument, making code using it fail with `error: value is a function while a Boolean was expected`"

Co-authored-by: Austreelis <dev@austreelis.net>
Reviewed-on: auxolotl/labs#7
Reviewed-by: isabel roses <isabel@isabelroses.com>
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Austreelis <austreelis@noreply.git.auxolotl.org>
Co-committed-by: Austreelis <austreelis@noreply.git.auxolotl.org>
2024-08-15 16:06:20 +00:00
Jake Hamilton 7d94b7f665
feat: package extend, dynamic propagation 2024-07-09 02:54:33 -07:00
Jake Hamilton 3f9d287065
refactor: format 2024-07-09 01:49:44 -07:00
Jake Hamilton ea200d834e
feat: pass through package dependencies via context 2024-07-08 23:18:11 -07:00
Jake Hamilton 62bc2f4eee
feat: propagating hooks and context 2024-07-08 23:07:59 -07:00
Steve D 42e69f7d43 "topographic" -> "topological" in latest tidepool commit (#6)
Reviewed-on: auxolotl/labs#6
Co-authored-by: Steve Dodd <steved424@gmail.com>
Co-committed-by: Steve Dodd <steved424@gmail.com>
2024-07-08 19:19:49 +00:00
Jake Hamilton 0ad14e8795
refactor: make dag helpers easier to reason about 2024-07-07 15:10:37 -07:00
Jake Hamilton 0a63667459
refactor(format): apply formatting 2024-07-07 15:03:48 -07:00
Jake Hamilton d2b053d63a
feat: export linux-headers 2024-07-07 15:03:47 -07:00
Jake Hamilton 7774f65079
refactor: minor cleanup 2024-07-07 15:03:46 -07:00
Jake Hamilton fd9b85f29e
feat: apply platform to deps inside submodules 2024-07-07 15:03:45 -07:00
Jake Hamilton b315ae81f6
refactor: only support i686-linux for foundation gcc 2024-07-07 15:03:45 -07:00
Jake Hamilton 193a52cbc8
fix: cross-platform deps 2024-07-07 15:03:44 -07:00
Jake Hamilton 27a0e3d59f
fix: remove failing build args 2024-07-07 15:03:43 -07:00
Jake Hamilton 2b5f90d4e5
refactor: make dependencies dynamically built per-package 2024-07-07 15:03:42 -07:00
Jake Hamilton 008632bc8b
feat: working transient deps 2024-07-07 15:03:41 -07:00
Jake Hamilton 0f602b1cb7
wip: working single dependency reference via coercion 2024-07-07 15:03:38 -07:00
Alex Kladov 8233d4aedf use correct name for topological sort (#5)
I am 0.8 sure this is a typo, I've never seen this being referred to as topographic sorting!

Reviewed-on: auxolotl/labs#5
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Alex Kladov <aleksey.kladov@gmail.com>
Co-committed-by: Alex Kladov <aleksey.kladov@gmail.com>
2024-06-23 18:39:30 +00:00
Steve D a2f0a06426 Fix non-deterministic "missing: Permission denied" errors (#4)
Make 'missing' executable where source tarballs use autotools and are unpacked with untar.  untar doesn't preserve or set mtime, which may result in autotools generated files, e.g. configure, having newer timestamps than their source files (e.g. configure.in.) In these circumstances autotools generated Makefiles will call 'missing' to either regenerate them or fix-up the timestamps.

Reviewed-on: auxolotl/labs#4
Reviewed-by: isabel roses <isabel@isabelroses.com>
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Steve Dodd <steved424@gmail.com>
Co-committed-by: Steve Dodd <steved424@gmail.com>
2024-06-23 17:32:11 +00:00
Jake Hamilton a707b0f06b
refactor: format all nix code 2024-06-22 10:58:44 -07:00
Jake Hamilton 3479354ec9
refactor: add formatting script 2024-06-22 10:56:18 -07:00
Jake Hamilton 403420fd4b
fix: missing semicolon 2024-06-22 10:43:47 -07:00
Jake Hamilton 9316874396
fix: add missing prefix for submodules, incorrect var name 2024-06-22 09:11:33 -07:00
Jake Hamilton dc2ce818b8
feat: apply dag defaults 2024-06-22 09:11:32 -07:00
Jake Hamilton 69a8760bd3
feat: working linux-headers build 2024-06-22 09:11:32 -07:00
Steve D 8e9cb4fbe9 foundation/stage0: fix hex0 hashes for amd64 & arm64 (#2)
I must confess to not understanding quite how all this works, but this seems to solve the problem of aarch64 fetching the x86-64 binary and vice-versa.

Reviewed-on: auxolotl/labs#2
Reviewed-by: Jake Hamilton <jake.hamilton@hey.com>
Co-authored-by: Steve Dodd <steved424@gmail.com>
Co-committed-by: Steve Dodd <steved424@gmail.com>
2024-06-17 10:59:52 +00:00
Jake Hamilton 9850da8aa9
fix: resolve issue with extending cross package 2024-06-16 02:24:21 -07:00
Jake Hamilton 0312e3c4cc
feat: working gcc build 2024-06-15 07:08:45 -07:00
Jake Hamilton 6bd35bf4d5
feat: rich platform information 2024-06-15 04:18:05 -07:00
Jake Hamilton 1c67c40213
feat: cross compilation package set 2024-06-15 03:58:25 -07:00
Jake Hamilton 2989fdc4fe
refactor: more elegant shorthand support 2024-06-15 02:35:37 -07:00
Jake Hamilton aa1c58f6ee
feat: support submodule longhand 2024-06-14 17:26:58 -07:00
Jake Hamilton 3713635d76
feat: simple builder 2024-06-14 07:01:18 -07:00
Jake Hamilton b3f9fe574e
refactor: enable foundation, standardize exports 2024-06-14 04:55:15 -07:00
Jake Hamilton fea8c2cd9c
feat: working package export 2024-06-14 04:47:54 -07:00
Jake Hamilton cdc90a4656
refactor: potluck -> tidepool 2024-06-14 02:12:19 -07:00
Jake Hamilton e1321add05
feat: dynamic cross packages generation 2024-06-14 01:40:46 -07:00
Jake Hamilton ea0ed58a7e
feat: working module packages 2024-06-14 01:26:16 -07:00
Jake Hamilton 856b88321e
fix: correct broken submodules 2024-06-13 10:22:57 -07:00
Jake Hamilton 9c29945531
fix: use type name for tagged type 2024-06-12 22:03:49 -07:00
Jake Hamilton f9ce7ff68b
feat: system info 2024-06-12 22:00:03 -07:00
Jake Hamilton cd12786be1
docs: update source urls 2024-06-12 06:31:09 -07:00
Jake Hamilton 7f8cc9be92
docs: formatting tweaks for rich text 2024-06-12 06:20:13 -07:00
Jake Hamilton 04bc516868
feat: dag, internal inputs solution, license update 2024-06-12 02:04:53 -07:00
Jake Hamilton f24f0876a9
feat: customizable gnu mirror, remove inputs for monorepo, potluck base 2024-06-11 04:39:26 -07:00
Jake Hamilton 284b8de0d5
refactor: types.package renamed to types.derivation, add lib extend 2024-06-09 06:28:32 -07:00
Jake Hamilton d9fe1ff418
Merge pull request #1 from matklad/patch-1 2024-06-08 08:46:26 -07:00