This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

meta: pull src manually instead of via flake inputs

+97 -109
+4 -6
all-packages.nix
··· 1 1 { 2 2 lib, 3 - inputs, 4 3 currentSystem, 5 4 hostpkgs ? { }, 6 5 }: 7 6 8 7 let 9 - wasmpkgs = 8 + pkgs = 10 9 { 11 - inherit lib inputs currentSystem; 10 + inherit lib currentSystem; 12 11 } 13 12 // lib.packagesFromDirectoryRecursive { 14 - callPackage = lib.callPackageWith pkgs; 13 + callPackage = lib.callPackageWith (pkgs // hostpkgs); 15 14 directory = ./packages; 16 15 }; 17 - pkgs = wasmpkgs // hostpkgs; 18 16 in 19 - wasmpkgs 17 + pkgs
-70
flake.lock
··· 1 1 { 2 2 "nodes": { 3 - "busybox": { 4 - "flake": false, 5 - "locked": { 6 - "lastModified": 1736261867, 7 - "narHash": "sha256-Sbuibax0P/sz+Pwn5BNASsbzF1iFeo19meO3EFhJZzA=", 8 - "owner": "tombl", 9 - "repo": "busybox", 10 - "rev": "e98330a3b04a0237e1741254b556b709911af8bc", 11 - "type": "github" 12 - }, 13 - "original": { 14 - "owner": "tombl", 15 - "repo": "busybox", 16 - "type": "github" 17 - } 18 - }, 19 3 "flake-compat": { 20 4 "flake": false, 21 5 "locked": { ··· 111 95 "type": "github" 112 96 } 113 97 }, 114 - "linux": { 115 - "flake": false, 116 - "locked": { 117 - "lastModified": 1736261539, 118 - "narHash": "sha256-cqa+eme6Uy985DNv83KmzOT7bLst82zYyfrEGVxWZ2c=", 119 - "owner": "tombl", 120 - "repo": "linux", 121 - "rev": "9aeee3fd5749953ed147c4dadb26660f322d9f68", 122 - "type": "github" 123 - }, 124 - "original": { 125 - "owner": "tombl", 126 - "ref": "args", 127 - "repo": "linux", 128 - "type": "github" 129 - } 130 - }, 131 - "llvm": { 132 - "flake": false, 133 - "locked": { 134 - "lastModified": 1736765684, 135 - "narHash": "sha256-R1XaHsJR2GlUnIuS/rjQGeB6EGAtgGHWax9UrDzX7iE=", 136 - "owner": "llvm", 137 - "repo": "llvm-project", 138 - "rev": "61c9f970b88710c8292cc32b92c1db723fcfff22", 139 - "type": "github" 140 - }, 141 - "original": { 142 - "owner": "llvm", 143 - "ref": "release/19.x", 144 - "repo": "llvm-project", 145 - "type": "github" 146 - } 147 - }, 148 98 "make-shell": { 149 99 "inputs": { 150 100 "flake-compat": "flake-compat_2" ··· 163 113 "type": "github" 164 114 } 165 115 }, 166 - "musl": { 167 - "flake": false, 168 - "locked": { 169 - "lastModified": 1737032533, 170 - "narHash": "sha256-cZX+YcBL7O1TwZU+/vvD9zDE6r9Kwl4cZL3LRq5twGg=", 171 - "owner": "tombl", 172 - "repo": "musl", 173 - "rev": "cd2f4cf59570540da70b3937f1c667f3b2971679", 174 - "type": "github" 175 - }, 176 - "original": { 177 - "owner": "tombl", 178 - "repo": "musl", 179 - "type": "github" 180 - } 181 - }, 182 116 "nixpkgs": { 183 117 "locked": { 184 118 "lastModified": 1736883708, ··· 197 131 }, 198 132 "root": { 199 133 "inputs": { 200 - "busybox": "busybox", 201 134 "flake-parts": "flake-parts", 202 135 "git-hooks": "git-hooks", 203 - "linux": "linux", 204 - "llvm": "llvm", 205 136 "make-shell": "make-shell", 206 - "musl": "musl", 207 137 "nixpkgs": "nixpkgs", 208 138 "treefmt-nix": "treefmt-nix" 209 139 }
+1 -24
flake.nix
··· 3 3 4 4 inputs = { 5 5 nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; 6 + # keep-sorted start block=yes 6 7 flake-parts = { 7 8 url = "github:hercules-ci/flake-parts"; 8 9 inputs.nixpkgs-lib.follows = "nixpkgs"; 9 10 }; 10 - 11 - # repo meta: 12 - # keep-sorted start block=yes 13 11 git-hooks = { 14 12 url = "github:cachix/git-hooks.nix"; 15 13 inputs.nixpkgs.follows = "nixpkgs"; ··· 20 18 treefmt-nix = { 21 19 url = "github:numtide/treefmt-nix"; 22 20 inputs.nixpkgs.follows = "nixpkgs"; 23 - }; 24 - # keep-sorted end 25 - 26 - # package sources: 27 - # keep-sorted start block=yes 28 - busybox = { 29 - url = "github:tombl/busybox"; 30 - flake = false; 31 - }; 32 - linux = { 33 - url = "github:tombl/linux/args"; 34 - flake = false; 35 - }; 36 - llvm = { 37 - url = "github:llvm/llvm-project/release/19.x"; 38 - flake = false; 39 - }; 40 - musl = { 41 - url = "github:tombl/musl"; 42 - flake = false; 43 21 }; 44 22 # keep-sorted end 45 23 }; ··· 82 60 # In our case, we have a handful of non-package attributes that we still want to expose under the pkgs object. 83 61 legacyPackages = import ./all-packages.nix { 84 62 inherit (inputs.nixpkgs) lib; 85 - inherit inputs; 86 63 currentSystem = system; 87 64 hostpkgs = import ./host-packages.nix { inherit pkgs; }; 88 65 };
+1
host-packages.nix
··· 16 16 bison 17 17 busybox 18 18 cmake 19 + curl 19 20 esbuild 20 21 findutils 21 22 flex
+7 -2
packages/busybox/package.nix
··· 1 1 { 2 - inputs, 2 + fetch, 3 3 run, 4 4 5 5 clang-host ? clang, ··· 15 15 run 16 16 { 17 17 name = "busybox"; 18 - src = inputs.busybox; 18 + src = fetch.github { 19 + owner = "tombl"; 20 + repo = "busybox"; 21 + rev = "refs/heads/master"; 22 + hash = "sha256-Sbuibax0P/sz+Pwn5BNASsbzF1iFeo19meO3EFhJZzA="; 23 + }; 19 24 path = [ 20 25 clang 21 26 gnumake
+5 -2
packages/compiler-rt/package.nix
··· 1 1 { 2 - inputs, 2 + fetch, 3 3 run, 4 4 5 5 clang, ··· 14 14 run 15 15 { 16 16 name = "compiler-rt"; 17 - src = inputs.llvm; 17 + src = fetch.tar { 18 + url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.7/llvm-project-19.1.7.src.tar.xz"; 19 + hash = "sha256-cZAB5vZjeTsXt9QHbP5xluWNQnAHByHtHnAhVDV0E6I="; 20 + }; 18 21 path = [ 19 22 clang 20 23 cmake
+62
packages/fetch/package.nix
··· 1 + { 2 + run, 3 + lib, 4 + curl, 5 + }: 6 + 7 + let 8 + mkFetcher = 9 + command: 10 + { 11 + url, 12 + name ? builtins.baseNameOf url, 13 + hash ? lib.fakeHash, 14 + }: 15 + run { 16 + inherit name url; 17 + outputHashMode = "nar"; 18 + outputHashAlgo = "sha256"; 19 + outputHash = hash; 20 + path = [ curl ]; 21 + } command; 22 + in 23 + 24 + rec { 25 + file = mkFetcher '' 26 + curl -L "$url" -o $out 27 + ''; 28 + tar = mkFetcher '' 29 + mkdir $out 30 + case "$url" in 31 + *gz) decompress=-z ;; 32 + *bz2) decompress=-j ;; 33 + *xz) decompress=-J ;; 34 + *lz) decompress=--lzma ;; 35 + *) decompress= ;; 36 + esac 37 + curl -L "$url" | tar -x $decompress -C $out --strip-components=1 38 + ''; 39 + zip = mkFetcher '' 40 + mkdir $out 41 + curl -L "$url" | unzip - -d $out 42 + ''; 43 + github = 44 + { 45 + owner, 46 + repo, 47 + rev, 48 + ... 49 + }@args: 50 + tar ( 51 + { 52 + url = "https://github.com/${owner}/${repo}/archive/${rev}.tar.gz"; 53 + name = "${owner}-${repo}-${builtins.baseNameOf rev}"; 54 + } 55 + // removeAttrs args [ 56 + "url" 57 + "owner" 58 + "repo" 59 + "rev" 60 + ] 61 + ); 62 + }
+7 -2
packages/linux/package.nix
··· 1 1 { 2 - inputs, 2 + fetch, 3 3 run, 4 4 5 5 bc, ··· 22 22 run 23 23 { 24 24 name = "linux"; 25 - src = inputs.linux; 25 + src = fetch.github { 26 + owner = "tombl"; 27 + repo = "linux"; 28 + rev = "refs/heads/args"; 29 + hash = "sha256-cqa+eme6Uy985DNv83KmzOT7bLst82zYyfrEGVxWZ2c="; 30 + }; 26 31 path = [ 27 32 bc 28 33 bison
+9 -2
packages/musl/package.nix
··· 1 1 { 2 - inputs, 2 + fetch, 3 3 run, 4 4 5 5 clang, ··· 11 11 run 12 12 { 13 13 name = "musl"; 14 - src = inputs.musl; 14 + src = fetch.github { 15 + owner = "tombl"; 16 + repo = "musl"; 17 + rev = "refs/heads/master"; 18 + hash = "sha256-cZX+YcBL7O1TwZU+/vvD9zDE6r9Kwl4cZL3LRq5twGg="; 19 + }; 15 20 path = [ 16 21 clang 17 22 gnumake ··· 22 27 # outputs = [ "out" "dev" ]; 23 28 } 24 29 '' 30 + ls 31 + 25 32 cat >config.mak <<EOF 26 33 ARCH=wasm32 27 34 prefix=$out
+1 -1
packages/run/package.nix
··· 34 34 if [ 0 -eq "$NIX_BUILD_CORES" ]; then 35 35 NIX_BUILD_CORES=$(${busybox}/bin/nproc) 36 36 fi 37 - exec ${bash}/bin/bash -eux $commandPath 37 + exec ${bash}/bin/bash -euxo pipefail $commandPath 38 38 '' 39 39 ]; 40 40 PATH = lib.makeBinPath (