Nix support improvements

Quick Start for BTC:

    $ git clone https://github.com/mmgen/mmgen-wallet
    $ cd mmgen-wallet
    $ nix-shell --pure nix

Enable altcoins and additional packages:

    $ mkdir -p ~/.mmgen
    $ cp nix/user-packages.nix ~/.mmgen
    # ... edit ~/.mmgen/user-packages.nix as required ...
    $ nix-shell --pure nix

For NixOS installation and other information, see:

    nix/README
This commit is contained in:
The MMGen Project 2025-01-03 14:23:20 +00:00
commit abbc9c843a
Signed by: mmgen
GPG key ID: 3F8B1861E32B7DA2
18 changed files with 199 additions and 130 deletions

51
nix/go-ethereum.nix Normal file
View file

@ -0,0 +1,51 @@
## adapted from go-ethereum.nix in nixpkgs repository
{
pkgs,
lib,
stdenv,
buildGoModule,
# nixosTests,
tag_version,
vendor_hash,
}:
buildGoModule {
pname = "go-ethereum";
version = tag_version;
src = fetchGit {
url = "https://github.com/ethereum/go-ethereum.git";
ref = "refs/tags/${tag_version}";
};
proxyVendor = false;
vendorHash = vendor_hash;
doCheck = false;
subPackages = [ "cmd/geth" ];
## Following upstream: https://github.com/ethereum/go-ethereum/blob/v1.11.6/build/ci.go#L218
tags = [ "urfave_cli_no_docs" ];
## Fix for usb-related segmentation faults on darwin
propagatedBuildInputs = lib.optionals stdenv.hostPlatform.isDarwin [
pkgs.libobjc
pkgs.IOKit
];
# passthru.tests = { inherit (nixosTests) geth; };
meta = with lib; {
homepage = "https://geth.ethereum.org/";
description = "Official golang implementation of the Ethereum protocol";
license = with licenses; [
lgpl3Plus
gpl3Plus
];
maintainers = with maintainers; [ RaghavSood ];
mainProgram = "geth";
};
}