bip32

Pure Haskell BIP32 hierarchical deterministic wallets (docs.ppad.tech/bip32).
git clone git://git.ppad.tech/bip32.git
Log | Files | Refs | README | LICENSE

commit caf18ba9bb0d40d8fbc87709fb2c77d529103c8d
parent 7ee1f552481582494d5df6beb991ca1d35dcac4c
Author: Jared Tobin <jared@jtobin.io>
Date:   Sun, 28 Dec 2025 12:39:24 -0330

flake: ghc, llvm updates

Diffstat:
Mflake.lock | 76++++++++++++++++++++++++++++++++++++++--------------------------------------
Mflake.nix | 28+++++++++++++++++++++++-----
Mppad-bip32.cabal | 2+-
3 files changed, 62 insertions(+), 44 deletions(-)

diff --git a/flake.lock b/flake.lock @@ -5,11 +5,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -20,11 +20,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1725910328, - "narHash": "sha256-n9pCtzGZ0httmTwMuEbi5E78UQ4ZbQMr1pzi5N0LAG8=", + "lastModified": 1766840161, + "narHash": "sha256-Ss/LHpJJsng8vz1Pe33RSGIWUOcqM1fjrehjUkdrWio=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5775c2583f1801df7b790bf7f7d710a19bac66f4", + "rev": "3edc4a30ed3903fdf6f90c837f961fa6b49582d1", "type": "github" }, "original": { @@ -51,11 +51,11 @@ ] }, "locked": { - "lastModified": 1741625558, - "narHash": "sha256-ZBDXRD5fsVqA5bGrAlcnhiu67Eo50q0M9614nR3NBwY=", + "lastModified": 1766934151, + "narHash": "sha256-BUFpuLfrGXE2xi3Wa9TYCEhhRhFp175Ghxnr0JRbG2I=", "ref": "master", - "rev": "fb63457f2e894eda28250dfe65d0fcd1d195ac2f", - "revCount": 24, + "rev": "58dfb7922401a60d5de76825fcd5f6ecbcd7afe0", + "revCount": 26, "type": "git", "url": "git://git.ppad.tech/base16.git" }, @@ -119,11 +119,11 @@ ] }, "locked": { - "lastModified": 1766929014, - "narHash": "sha256-wkQYKuwYhVD2xF0wUriFrBpRXX98ezlUfygl8kGpe6g=", + "lastModified": 1766933347, + "narHash": "sha256-hwBsY4vyefW9qSj0MK0+wr9hIc0OcFuhQD11XGGcO/o=", "ref": "master", - "rev": "1d63926222ed984287f57e2ef48e76e5fbc4089f", - "revCount": 286, + "rev": "d7b03362f9d075c505b8c293524f577f7186a647", + "revCount": 289, "type": "git", "url": "git://git.ppad.tech/fixed.git" }, @@ -165,11 +165,11 @@ ] }, "locked": { - "lastModified": 1766436802, - "narHash": "sha256-cZBaR5zBpguiusf3/BzjwrMY63FoXDVGuas+e8QyjTc=", + "lastModified": 1766935294, + "narHash": "sha256-hwHadXNxB+mo50EsN9iEbwkzoqiqdobB8QwIjXpqckk=", "ref": "master", - "rev": "c23408f69f64d41c3d5478801bb16c0603b4e43b", - "revCount": 53, + "rev": "7557757c32cccb0d95416a21ac832df53cdfdb5d", + "revCount": 54, "type": "git", "url": "git://git.ppad.tech/hmac-drbg.git" }, @@ -185,11 +185,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1737297101, - "narHash": "sha256-EnXnq+JLflbWt+DvaGGnY2gfAqsGNOm5vPgHh3hkfwQ=", + "lastModified": 1766932084, + "narHash": "sha256-GvVsbTfW+B7IQ9K/QP2xcXJAm1lhBin1jYZWNjOzT+o=", "ref": "master", - "rev": "f29823875250bc99b3891f7373535ccde9a29a44", - "revCount": 1, + "rev": "353e61763b959b960a55321a85423501e3e9ed7a", + "revCount": 2, "type": "git", "url": "git://git.ppad.tech/nixpkgs.git" }, @@ -219,11 +219,11 @@ ] }, "locked": { - "lastModified": 1766442965, - "narHash": "sha256-wsspQAyMf+vXLpYY/hk05IgsNcb1KPeIxwKzV16zAZM=", + "lastModified": 1766937812, + "narHash": "sha256-vU0PlTSY3iE0tHiLzAr4P7hXw3wDDvKrJRsohijPpdw=", "ref": "master", - "rev": "4fe3998c0d94dea7e059602747413d5825e34330", - "revCount": 28, + "rev": "449d59398770ee5cda2a939cfc6f269b3e49c900", + "revCount": 29, "type": "git", "url": "git://git.ppad.tech/ripemd160.git" }, @@ -263,11 +263,11 @@ ] }, "locked": { - "lastModified": 1766930981, - "narHash": "sha256-b1oICqCQSSDZrdumNif3gQKiED4edjjaArYO8rMiFls=", + "lastModified": 1766936396, + "narHash": "sha256-toOSP9c0vnjk8XlLz7eBDky9ZNnKBqzue6AFrvCqHhU=", "ref": "master", - "rev": "02a94bd244dfff3daa1450ad7d5f7c862db8e55c", - "revCount": 231, + "rev": "4c75152a526338e4885f26700f31db34ba448a0f", + "revCount": 234, "type": "git", "url": "git://git.ppad.tech/secp256k1.git" }, @@ -297,11 +297,11 @@ ] }, "locked": { - "lastModified": 1766484297, - "narHash": "sha256-jBXyJeilmp75csTkqsqgNtCUrkdk+wt5TEoWrFaatsM=", + "lastModified": 1766934663, + "narHash": "sha256-QFHvRxg/AN9/FHF9EyVui1os0sTxpawzsmxcHqcdhoc=", "ref": "master", - "rev": "5524b108ff5ebdfb113d77a313fa881f873480c1", - "revCount": 97, + "rev": "0d9a7a2f83fc95bf3ac1d335d1c0237d397e44bc", + "revCount": 98, "type": "git", "url": "git://git.ppad.tech/sha256.git" }, @@ -331,11 +331,11 @@ ] }, "locked": { - "lastModified": 1766437426, - "narHash": "sha256-vn0nUVrMqux2PorMOZlx3RAqylf88BTw+jRMXC0gIz8=", + "lastModified": 1766934908, + "narHash": "sha256-39ElMaWIjMW0BbHqINaHDjzpL8PsWNyvZn14QAKgPOo=", "ref": "master", - "rev": "669c4ffd1cc7826876af2d67661738c2081ea6a9", - "revCount": 31, + "rev": "4bb34de9a798e1954e09ec3b6d8d8b8db645e5d7", + "revCount": 32, "type": "git", "url": "git://git.ppad.tech/sha512.git" }, diff --git a/flake.nix b/flake.nix @@ -73,7 +73,7 @@ pkgs = import nixpkgs { inherit system; }; hlib = pkgs.haskell.lib; - llvm = pkgs.llvmPackages_15.llvm; + llvm = pkgs.llvmPackages_19.llvm; fixed = ppad-fixed.packages.${system}.default; fixed-llvm = @@ -99,11 +99,29 @@ (hlib.enableCabalFlag secp256k1 "llvm") [ llvm ]; - hpkgs = pkgs.haskell.packages.ghc981.extend (new: old: { - ppad-base16 = ppad-base16.packages.${system}.default; - ppad-base58 = ppad-base58.packages.${system}.default; + base16 = ppad-base16.packages.${system}.default; + base16-llvm = + hlib.addBuildTools + (hlib.enableCabalFlag base16 "llvm") + [ llvm ]; + + base58 = ppad-base58.packages.${system}.default; + base58-llvm = + hlib.addBuildTools + (hlib.enableCabalFlag base58 "llvm") + [ llvm ]; + + ripemd160 = ppad-ripemd160.packages.${system}.default; + ripemd160-llvm = + hlib.addBuildTools + (hlib.enableCabalFlag ripemd160 "llvm") + [ llvm ]; + + hpkgs = pkgs.haskell.packages.ghc910.extend (new: old: { + ppad-base16 = base16-llvm; + ppad-base58 = base58-llvm; ppad-fixed = fixed-llvm; - ppad-ripemd160 = ppad-ripemd160.packages.${system}.default; + ppad-ripemd160 = ripemd160-llvm; ppad-secp256k1 = secp256k1-llvm; ppad-sha256 = sha256-llvm; ppad-sha512 = sha512-llvm; diff --git a/ppad-bip32.cabal b/ppad-bip32.cabal @@ -8,7 +8,7 @@ author: Jared Tobin maintainer: jared@ppad.tech category: Cryptography build-type: Simple -tested-with: GHC == 9.8.1 +tested-with: GHC == 9.10.3 extra-doc-files: CHANGELOG description: [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki)