2
0
Fork 0

Add a pinned fetch list for Genode Labs binaries

This commit is contained in:
Ehmry - 2019-09-30 14:40:09 +02:00
parent 2d469bd228
commit b03c49c31c
5 changed files with 114 additions and 2 deletions

View File

@ -6,6 +6,7 @@ let
pkgOverlay = self: super: pkgOverlay = self: super:
# Overlay of locally defined packages # Overlay of locally defined packages
with self; { with self; {
depot = callPackage ./depot { };
dhall = callPackage ./dhall { }; dhall = callPackage ./dhall { };
genode = callPackage ./upstream { }; genode = callPackage ./upstream { };
nova = callPackage ./NOVA { }; nova = callPackage ./NOVA { };
@ -18,7 +19,7 @@ let
# A branch of Nixpkgs with a custom "crossSystem" mechanism # A branch of Nixpkgs with a custom "crossSystem" mechanism
url = "https://github.com/ehmry/nixpkgs.git"; url = "https://github.com/ehmry/nixpkgs.git";
ref = "hybrid"; ref = "hybrid";
rev = "e4d734ace275cae70a776771d034c051956c9cab"; rev = "3985d04b2cfe144beaf0fde58b2904763004197f";
}; };
in { nixpkgs ? nixpkgs' }: in { nixpkgs ? nixpkgs' }:

43
depot/default.nix Normal file
View File

@ -0,0 +1,43 @@
# SPDX-FileCopyrightText: Emery Hemingway
#
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
{ stdenvNoCC, fetchurl }:
let
stdenv = stdenvNoCC;
unpack = { name, value }: {
inherit name;
value = stdenv.mkDerivation {
pname = name;
inherit (value) version;
preferLocalBuild = true;
src = fetchurl {
url =
"http://depot.genode.org/genodelabs/bin/x86_64/${name}/${value.version}.tar.xz";
inherit (value) sha256;
};
phases = [ "unpackPhase" "installPhase" "fixupPhase" "distPhase" ];
installPhase = ''
find . -type f | while read FILE; do
local DEST=$out/bin
case $FILE in
*.a) DEST=$out/lib ;;
*.o) DEST=$out/lib ;;
*.so) DEST=$out/lib ;;
*.tar) DEST=$out/tar ;;
esac
install -Dm444 -t $DEST $FILE
done
'';
meta = {
license = [ "LicenseRef-Genode" ];
downloadPage = "http://depot.genode.org/genodelabs/bin/x86_64/${name}/";
maintainers = with stdenv.lib.maintainers; [ ehmry ];
};
};
};
listing = import ./list.nix;
derivations = map unpack listing;
in builtins.listToAttrs derivations

15
depot/gen-list.sh Executable file
View File

@ -0,0 +1,15 @@
#!/bin/sh
# TODO: git clone shallow, fhs environment, make -f depot/whatever
echo "/* DO NOT EDIT - this file generated by gen-list.sh */ ["
find /home/repo/genode/public/genodelabs/bin -name '*.tar.xz' -print \
| awk --field-separator / '{print $9" "$10" "$0}' \
| while read NAME VERSION LOCAL
do
SHA256=`nix-prefetch-url file://$LOCAL`
echo "{name=\"$NAME\";value={sha256=\"$SHA256\";version=\"${VERSION%%.tar.xz}\";};}"
done
echo ']'

53
depot/list.nix Normal file
View File

@ -0,0 +1,53 @@
/* DO NOT EDIT - this file generated by gen-list.sh */ [
{name="expat";value={sha256="0qpiwv2klcgq61prrn7h5kwms4cmk0bqjcpkkpml2zrz17yzyg1p";version="2019-08-27";};}
{name="themed_decorator";value={sha256="1vcvjfx5h94kzrvrfi3ybyl146f1c954xcf2m8yx7y1h7pvlady3";version="2019-08-27";};}
{name="noux";value={sha256="1i9bxy7rmcn3hvl4n8wx9d2cla3xld4jqwawhs10iv0iv6c3apb1";version="2019-08-27";};}
{name="fs_rom";value={sha256="1lp2ssjbb0hbjymlr17xbpy2mncpi31hbf50ijn689hkbjggrv58";version="2019-08-27";};}
{name="qt5_qjpeg";value={sha256="1j2153rkf47qs7i9nkyg4dsr84yf8bdw66hi2nm8w7kvz8m5a6dd";version="2019-08-28";};}
{name="libpng";value={sha256="1y18g1ypdjiw43shcrjpvi0mn9055nnjmsnanaqxwvhfpi787aj6";version="2019-08-27";};}
{name="qt5_gui";value={sha256="01g5qphkqn6a2rlcc5dmvrd1q7dvj2crbhasidjfpsiklb88736j";version="2019-08-28";};}
{name="base-nova";value={sha256="12249m7awh2hn9cwa4ck19cxgk6cv7m2bz996hs366lm70j69w9b";version="2019-08-27";};}
{name="vfs_jitterentropy";value={sha256="1m9flx0n21wgkfqbvrghpn53rf4cfsziv848zawr9jk6ygns5rn1";version="2019-08-27";};}
{name="qt5_textedit";value={sha256="0lag3s9xkncy7s2vr5x2j4f0rnr7xylfc1f9281s34xk7vcyrv9i";version="2019-08-28";};}
{name="mesa";value={sha256="1sa9wlwbsldjvynh13i75c9np7rm914h3nksw710apm3js3yjkcg";version="2019-08-27";};}
{name="backdrop";value={sha256="0jy9qwmjfy1zra9hd829fhnkp933yv798pzihqlhfbyf3zcf4m01";version="2019-08-27";};}
{name="decorator";value={sha256="057wf5i3vkq4l8s400zg0zs1qjf1mj29585b4fjjk23ml3kpr89j";version="2019-08-27";};}
{name="qt5_component";value={sha256="1jbr0fqai7mvwvdxmhngbbnya4ziwxkrnl0amv13k1nrxsgha4jg";version="2019-08-27";};}
{name="qt5_core";value={sha256="0abg9h99jkis9f57zcfq4mw97bwrczqichmnvg9kfwqy17limrgg";version="2019-08-28";};}
{name="nano3d";value={sha256="0p0rkx49816d8n4jwnnpj09ndvjrixj36kk64m4x6j0f90icqj2v";version="2019-08-27";};}
{name="zlib";value={sha256="160y5hl49hhjqy3132f0k8xi7c3x5yz4h29dsjrfb8sl1ccmsaca";version="2019-08-27";};}
{name="vfs_ttf";value={sha256="10ypnhk1r8yavmagpv3ylbyz3gw2nrgrplfabnap2nmavai03dff";version="2019-08-27";};}
{name="qt5_widgets";value={sha256="04xn5lrbskvw5lslfhqj46j5ihb6y1kw5p8br1dcsgc517nxvjdi";version="2019-08-28";};}
{name="vfs";value={sha256="0jqgj9zq10zy9gq2lzkprbq8pdy3v90jb61di09fdrsmc1y76pi1";version="2019-08-27";};}
{name="qt5_qpa_nitpicker";value={sha256="1svfmw768hxx1hpxvslazcs0czqv7ib88n5yb8cxalqdrmhaa3s6";version="2019-08-28";};}
{name="freetype";value={sha256="1851hladn19lps5fp2g31cps7620wi94cpz7c70baqw7n4j71xhc";version="2019-08-27";};}
{name="coreutils-minimal";value={sha256="1hb385gnn1m5phjvfs5nkfkh8xn59k7gjw9ivh35czixkh2rp658";version="2019-08-27";};}
{name="rom_reporter";value={sha256="1zvmi5mxcj2xxzj3ipsr3xh9qf43xplymcmmjjbapnswwhnqc9a8";version="2019-08-27";};}
{name="chroot";value={sha256="1x0xzlsjvcrpj59kn487aa1hf892bwyy5ck25d2wd4j0nsin3rjd";version="2019-08-27";};}
{name="libiconv";value={sha256="0kkc76vkv0hdgid6ygrfl88c957q21v2zpbvqqz0pjrmxwi98kly";version="2019-08-27";};}
{name="fs_report";value={sha256="0mdxmhk5mw2q6gb46zxsdsw9zps5lpmqkmj5fmr3b9wa3mjlw2vq";version="2019-08-27";};}
{name="ncurses";value={sha256="0x912bf63iz28bjj4j9hz0ppvc365x5zg574g1ghi4xgcrm6rr0m";version="2019-08-27";};}
{name="nic_router";value={sha256="0y136w6y8y0vrmzi5nakvphxd3x1zmr8g4jxadj4s0s525rm3qgy";version="2019-08-27";};}
{name="nit_focus";value={sha256="109kzplshlday4z89an0pfpkaf42mxb7fj5ql2dbvmc8zb276185";version="2019-08-27";};}
{name="libcrypto";value={sha256="1yya3pxbzg7m1zrip3vh5m44vx38ckmb5hqcs61dxqid71py7r6b";version="2019-08-27";};}
{name="libc";value={sha256="0f2rcjsfb79zgs0v34w4qnf85i7d2p61p9wy2i0k9hq3d1yqb3fl";version="2019-08-27";};}
{name="ipxe_nic_drv";value={sha256="0ai1yl2iz9j0lhxhi0lxc0qv9r1q9pyn1rkyb6l05ijxvwbcqma6";version="2019-08-27";};}
{name="vbox5-nova";value={sha256="00215vwxyc77q8s4kh7v1fn1cs120wm1l6dqd1jm4dxq6pq3fqfv";version="2019-08-27";};}
{name="report_rom";value={sha256="1fc2qg8lfiznysn47m22c90v2z2kc6cdpnd8ny4j22rwmc5ya03l";version="2019-08-27";};}
{name="nit_fb";value={sha256="1c3xqyqppqwygfhnbvpgsy5j2dir1k7sdfb9s9ld5j0psav742iy";version="2019-08-27";};}
{name="posix";value={sha256="1z08w7lwgq49crbjrim2dh5wi80czfxawwcq7cxbjbfap5nw8ak6";version="2019-08-27";};}
{name="wifi_drv";value={sha256="1fmwwrp0w7iinn70h09imlmxqnd5x9kn6fagmj3ria6mqai8za8s";version="2019-08-27";};}
{name="libssl";value={sha256="0kafqbpzvx9hvdcq91ksqw5s6ynyzf9c2kq2186sgwqdy8kgkq9r";version="2019-08-27";};}
{name="coreutils";value={sha256="002lvh16kxgb41acksjrl0phsm8idaby0z7jcmddzpybgdjj60dx";version="2019-08-27";};}
{name="terminal";value={sha256="1yw7gn22fyw65dn481rx1lph0bawrdcj72mr4kddjdf4hajk7n75";version="2019-08-27";};}
{name="acpica";value={sha256="19g0i2cixvn4smwykmr27a763njcyccjl1fh81pcqdygdqni56bp";version="2019-08-27";};}
{name="wm";value={sha256="0y2v0frxhpkvw8mzn71xn8z4pap459r0bk8w14dnrw61fv8rxjkh";version="2019-08-27";};}
{name="rom_filter";value={sha256="1s2xnklvwrmpfmynl44k5m0w3mwnhplxsfcgw8k2cap4vkh8vchr";version="2019-08-27";};}
{name="stdcxx";value={sha256="0ahbj80kwblp0ll7gwn05krmfx0hgbmfjy9g1991d0ppabw52d8w";version="2019-08-27";};}
{name="init";value={sha256="15z9fscqh91mapc28bpfbsh1dxb8k0vcq75x6f7v2hs11jb8r6xf";version="2019-08-27";};}
{name="window_layouter";value={sha256="0fbr5wfpbabzi1h1bwa9558m05hcgnwa5van9rxbzp934krmwch7";version="2019-08-27";};}
{name="qt5_printsupport";value={sha256="0rfvvafv2lh65hx17k6hn1kfrhsddzjrq0nhb2xc2q1nvr3wnpli";version="2019-08-28";};}
{name="vim-minimal";value={sha256="18cj7dirg3kplj6277gajfbiv7in28dfxx7dxwzwlkhcppnm9v3y";version="2019-08-27";};}
{name="jpeg";value={sha256="0261wahfx24gjfj5a34ggzqka4nzgnc19l9arypf4b2p1vmd4gwa";version="2019-08-27";};}
{name="bash-minimal";value={sha256="08rpnsvywrp2a7a464xza7mi89sw81qfrxr626phc5hfviiyjp5j";version="2019-08-27";};}
]

View File

@ -6,5 +6,5 @@
{ {
build.x86_64 = let pkgs = import ./default.nix { inherit nixpkgs; }; build.x86_64 = let pkgs = import ./default.nix { inherit nixpkgs; };
in { inherit (pkgs) genode nova stdenv; }; in { inherit (pkgs) depot genode nova stdenv; };
} }