lol

elm: add instructions for versions.dat and elm-elm.nix

(cherry picked from commit fcabcb2e41a89b2249d24e68355866979e961f8a)
Signed-off-by: Domen Kožar <domen@dev.si>

authored by

Matt McHenry and committed by
Domen Kožar
aa8bdaf0 fc11905b

+49 -26
+25 -2
pkgs/development/compilers/elm/default.nix
··· 3 3 # To update: 4 4 5 5 # 1) Modify ./update.sh and run it 6 - # 2) XXX: generate packages/elm-elm.nix 7 - # 3) XXX: versions.dat 6 + 7 + # 2) to generate versions.dat: 8 + # 2.1) git clone https://github.com/elm/compiler.git 9 + # 2.2) cd compiler 10 + # 2.3) cabal2nix --shell . | sed 's/"default",/"ghc822",/' > shell.nix 11 + # 2.4) nix-shell 12 + # 2.5) mkdir .elm 13 + # 2.6) export ELM_HOME=$(pwd)/.elm 14 + # 2.7) cabal build 15 + # 2.8) cp .elm/0.19.0/package/versions.dat ... 16 + 17 + # 3) generate a template for elm-elm.nix with: 18 + # ( 19 + # echo "{"; 20 + # jq '.dependencies | .direct, .indirect | to_entries | .[] | { (.key) : { version : .value, sha256: "" } } ' \ 21 + # < ui/browser/elm.json \ 22 + # | sed 's/:/ =/' \ 23 + # | sed 's/^[{}]//' \ 24 + # | sed -E 's/(["}]),?$/\1;/' \ 25 + # | sed -E 's/"(version|sha256)"/\1/' \ 26 + # | grep -v '^$'; 27 + # echo "}" 28 + # ) 29 + # 30 + # ... then fill in the sha256s 8 31 9 32 # Notes: 10 33
+24 -24
pkgs/development/compilers/elm/packages/elm-elm.nix
··· 1 1 { 2 - "elm/time" = { 3 - version = "1.0.0"; 4 - sha256 = "0vch7i86vn0x8b850w1p69vplll1bnbkp8s383z7pinyg94cm2z1"; 5 - }; 6 - "elm/url" = { 2 + "elm/browser" = { 7 3 version = "1.0.0"; 8 - sha256 = "0av8x5syid40sgpl5vd7pry2rq0q4pga28b4yykn9gd9v12rs3l4"; 4 + sha256 = "1apmvyax93nvmagwj00y16zx10kfv640cxpi64xgqbgy7d2wphy4"; 9 5 }; 10 - "elm/json" = { 6 + "elm/core" = { 11 7 version = "1.0.0"; 12 - sha256 = "1g0hafkqf2q633r7ir9wxpb1lnlzskhpsyi0h5bkzj0gl072zfnb"; 8 + sha256 = "10kr86h4v5h4p0586q406a5wbl8xvr1jyrf6097zp2wb8sv21ylw"; 13 9 }; 14 10 "elm/html" = { 15 11 version = "1.0.0"; 16 12 sha256 = "1n3gpzmpqqdsldys4ipgyl1zacn0kbpc3g4v3hdpiyfjlgh8bf3k"; 17 13 }; 18 - "elm/parser" = { 19 - version = "1.0.0"; 20 - sha256 = "0k4zlq30lrvawqvzwbvsl0hrmwf9s832mb41z7fdspm4549dj7wc"; 21 - }; 22 14 "elm/http" = { 23 15 version = "1.0.0"; 24 16 sha256 = "1igmm89ialzrjib1j8xagkxalq1x2gj4l0hfxcd66mpwmvg7psl8"; 25 17 }; 26 - "elm/virtual-dom" = { 27 - version = "1.0.0"; 28 - sha256 = "0hm8g92h7z39km325dlnhk8n00nlyjkqp3r3jppr37k2k13md6aq"; 29 - }; 30 - "elm/browser" = { 18 + "elm/json" = { 31 19 version = "1.0.0"; 32 - sha256 = "1apmvyax93nvmagwj00y16zx10kfv640cxpi64xgqbgy7d2wphy4"; 20 + sha256 = "1g0hafkqf2q633r7ir9wxpb1lnlzskhpsyi0h5bkzj0gl072zfnb"; 33 21 }; 34 - "elm/core" = { 22 + "elm/project-metadata-utils" = { 35 23 version = "1.0.0"; 36 - sha256 = "10kr86h4v5h4p0586q406a5wbl8xvr1jyrf6097zp2wb8sv21ylw"; 24 + sha256 = "1d4rd4grrnbdvj9gf00h7dr6hbkjzawgkzpizfrkp1z1pyr3mvq9"; 37 25 }; 38 26 "elm/svg" = { 39 27 version = "1.0.0"; 40 28 sha256 = "08x0v8p9wm699jjmsnbq69pxv3jh60j4f6fg7y6hyr7xxj85y390"; 41 29 }; 42 - "elm/project-metadata-utils" = { 43 - version = "1.0.0"; 44 - sha256 = "1d4rd4grrnbdvj9gf00h7dr6hbkjzawgkzpizfrkp1z1pyr3mvq9"; 45 - }; 46 30 "elm-explorations/markdown" = { 47 31 version = "1.0.0"; 48 32 sha256 = "0k3110ixa4wwf3vkkdplagwah9ypr965qxr1y147rnsc1xsxmr6y"; 33 + }; 34 + "elm/parser" = { 35 + version = "1.0.0"; 36 + sha256 = "0k4zlq30lrvawqvzwbvsl0hrmwf9s832mb41z7fdspm4549dj7wc"; 37 + }; 38 + "elm/time" = { 39 + version = "1.0.0"; 40 + sha256 = "0vch7i86vn0x8b850w1p69vplll1bnbkp8s383z7pinyg94cm2z1"; 41 + }; 42 + "elm/url" = { 43 + version = "1.0.0"; 44 + sha256 = "0av8x5syid40sgpl5vd7pry2rq0q4pga28b4yykn9gd9v12rs3l4"; 45 + }; 46 + "elm/virtual-dom" = { 47 + version = "1.0.0"; 48 + sha256 = "0hm8g92h7z39km325dlnhk8n00nlyjkqp3r3jppr37k2k13md6aq"; 49 49 }; 50 50 }