New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
holochain-go: init at 0.1.0-alpha #42937
Conversation
Holochain is a platform for creating an unenclosable carrier upon which highly-scalable dApps and smart contracts can be built. This is the holochain team's initial implimentation in go. A rust version is under development.
Agree with @Mic92: "Since this was manually edited, we should not claim it was auto generated.
As per @Mic92: can be removed
More housecleaning, also as per @Mic92. He's right, as it says in the manual, to use fetchFromGithub instead of fetchgit > Best: Fetches a snapshot archive and you get the rev you want.
@zimbatm How does this look to you? |
@edolstra this is what I was telling you about last week |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looking good!
downloadPage = "https://developer.holochain.org/"; | ||
license = stdenv.lib.licenses.gpl3; | ||
maintainers = with stdenv.lib.maintainers; [ gavin ]; | ||
platforms = stdenv.lib.platforms.all; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if platforms
is not set it will default to go.meta.platforms
which is probably what you want.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok I'll remove the platforms metadata
@GrahamcOfBorg holochain-go |
@GrahamcOfBorg build holochain-go |
Failure on x86_64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
Success on x86_64-darwin (full log) Attempted: holochain-go Partial log (click to expand)
|
Failure on aarch64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
@gavinrogers has holochain-go been exclusively developed on a mac? The Linux compilation is failing with an exit status 8. |
@zimbatm No it's been developed on linux machines as well. It's complaining about github.com/gxed/eventfd ... which isn't called by holochain-proto (that I can tell). Is it being called by a dependency? I'll add it |
"if platforms is not set it will default to go.meta.platforms which is probably what you want" And that does sound like what we want. Also, the linux build was complaining about eventfd, or the lack thereof.
@zimbatm what's the easiest way to create a job in hydra that will build this? I'm trying a jobset with the "nix expression" set to ./pkgs/servers/holochain-go/default.nix and the input value "https://github.com/gavinrogers/nixpkgs init_holochain" but that doesn't seem to work EDIT: the error I'm getting is |
@GrahamcOfBorg build holochain-go |
I'm afraid you lack the access rights to trigger the build. |
Failure on x86_64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
Failure on aarch64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
Success on x86_64-darwin (full log) Attempted: holochain-go Partial log (click to expand)
|
Ok it needs github.com/gxed/GoEndian, but only on linux? I don't fully understand why it's only complaining on some platforms. I should add it, but perhaps I should find out what is using it, and package that separately, with GoEndian as a dependency? |
I'm a little confused as to why this buils and runs on darwin, but fails to build without it on linux. The error was: ```go/src/github.com/gxed/eventfd/eventfd.go:17:2: cannot find package "github.com/gxed/GoEndian" in any of:```
@GrahamcOfBorg build holochain-go @gavinrogers make sure to use |
Success on x86_64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: holochain-go Partial log (click to expand)
|
Also I recommend vendoring the dependencies using a tool like godep. This will simplify the nix packaging as the deps.nix doesn't need to be generated anymore, and also allow anyone with go installed to easily run Without locking the dependencies you are going to get github issues about version incompatibilities otherwise. |
Success on x86_64-darwin (full log) Attempted: holochain-go Partial log (click to expand)
|
@zimbatm "Please use dep or another tool instead." in the README Is there something in nixpkgs which might supply an example of this? EDIT: Ok I built a deps.nix using dep-0.4.1 and dep2nix-0.0.1. There's not much difference really, and it breaks as |
@grahamc @zimbatm @svanderburg @edolstra could I get a merge on this? we have a hackathon coming up this weekend and it would be a good demonstration of nixpkgs if participants could install nix, add the unstable channel and just |
Holochain is a platform for creating an unenclosable carrier upon which
highly-scalable dApps and smart contracts can be built. This is the holochain
team's initial implimentation in go. A rust version is under development.
Motivation for this change
Add the holochain core to nixpkgs to allow app developers to bootstrap more quickly: allow people to run their own holochain node.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
(nothing depends on this change)./result/bin/
)nix path-info -S
before and after)