ledgerwatch / erigon

Ethereum implementation on the efficiency frontier
GNU Lesser General Public License v3.0
3.03k stars 1.05k forks source link

Adding debian packaging #10849

Open djpolygon opened 1 week ago

djpolygon commented 1 week ago

The PR does the following:

Uses the /opt/erigon location for data, this can be changed, using this approach is more in line with *nix standards for optional software packages location.

AskAlexSharov commented 2 days ago

some questions:

  1. to publish deb package we don't need any public key? if no - then anybody can publish under our name?
  2. main we pushing there every day - is it ok?
  3. i see it using make erigon to build binary, but then to cross-compile it doesn't use make - it means all flags we have in Makefile was lost for cross-compiled binaries. Example1: CGO_CFLAGS += -D__BLST_PORTABLE__, Example2: -trimpath -tags $(BUILD_TAGS) -buildvcs=false (where BUILD_TAGS = nosqlite,noboltdb)
  4. need add workflow_dispatch: to .yml - to allow manual run of flow (like on this picture https://github.com/ledgerwatch/erigon/issues/7893 )
  5. (not for this PR, but in-general): why only erigon and no rpcdaemon, etc... (if we will build all binaries this way, likely .yml will get 1K lines. maybe not)
djpolygon commented 2 days ago
  1. To publish to official debian package repo you do need a public key and it is an entier approval process. Most do not do this, they setup their own PPA/Package repo as it is far easier and less tedium than the requirements.
  2. We can change the target branch, I used main as it was what I used for the testing and similarly we use that as the basis at Polygon for bor/heimdall.
  3. I can add changes to use the Makefile, the scope of what I was working on was creating an erigon binary to be used with ansible and profiles.
  4. I can and will add, do you have any requirements and or custom defined inputs you would like for this addition?
  5. See 3, but if you would like we could schedule a call/chat via slack and discuss further
AskAlexSharov commented 1 day ago
  1. what repo used in this PR?
  2. main is fine
  3. yes, use makefile fine
  4. no. empty is fine. you can see in ci.yml
  5. no. i think we are almost fine.