Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions contrib/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ for Debian-based Linux systems. If you compile dashd/dash-qt yourself, there are
### [Gitian-descriptors](/contrib/gitian-descriptors) ###
Notes on getting Gitian builds up and running using KVM.

### [Gitian-keys](/contrib/gitian-keys)
PGP keys used for signing Dash Core [Gitian release](/doc/release-process.md) results.
### [Builder keys](/contrib/builder-keys)
PGP keys used for signing Dash Core [release](/doc/release-process.md) results.

### [MacDeploy](/contrib/macdeploy) ###
Scripts and notes for Mac builds.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ PGP keys

This folder contains the public keys of developers and active contributors.

The keys are mainly used to sign git commits or the build results of Gitian
builds.
The keys are mainly used to sign git commits or the build results of builds.

You can import the keys into gpg as follows. Also, make sure to fetch the
latest version from the key server to see if any key was revoked in the
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
59 changes: 59 additions & 0 deletions contrib/guix/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
FROM alpine:3.17

RUN apk --no-cache --update add \
bash \
bzip2 \
ca-certificates \
curl \
git \
make \
shadow

ARG guix_download_path=ftp://ftp.gnu.org/gnu/guix
ARG guix_version=1.4.0
ARG guix_checksum_aarch64=72d807392889919940b7ec9632c45a259555e6b0942ea7bfd131101e08ebfcf4
ARG guix_checksum_x86_64=236ca7c9c5958b1f396c2924fcc5bc9d6fdebcb1b4cf3c7c6d46d4bf660ed9c9
ARG builder_count=32

ENV PATH /root/.config/guix/current/bin:$PATH

# Application Setup
# https://guix.gnu.org/manual/en/html_node/Application-Setup.html
ENV GUIX_LOCPATH /root/.guix-profile/lib/locale
ENV LC_ALL en_US.UTF-8

RUN guix_file_name=guix-binary-${guix_version}.$(uname -m)-linux.tar.xz && \
eval "guix_checksum=\${guix_checksum_$(uname -m)}" && \
cd /tmp && \
wget -q -O "$guix_file_name" "${guix_download_path}/${guix_file_name}" && \
echo "${guix_checksum} ${guix_file_name}" | sha256sum -c && \
tar xJf "$guix_file_name" && \
mv var/guix /var/ && \
mv gnu / && \
mkdir -p ~root/.config/guix && \
ln -sf /var/guix/profiles/per-user/root/current-guix ~root/.config/guix/current && \
source ~root/.config/guix/current/etc/profile

# Guix expects this file to exist
RUN touch /etc/nsswitch.conf

RUN guix archive --authorize < ~root/.config/guix/current/share/guix/ci.guix.gnu.org.pub

# Build Environment Setup
# https://guix.gnu.org/manual/en/html_node/Build-Environment-Setup.html

RUN groupadd --system guixbuild
RUN for i in $(seq -w 1 ${builder_count}); do \
useradd -g guixbuild -G guixbuild \
-d /var/empty -s $(which nologin) \
-c "Guix build user ${i}" --system \
"guixbuilder${i}" ; \
done

CMD ["/root/.config/guix/current/bin/guix-daemon","--build-users-group=guixbuild"]

RUN git clone https://github.com/dashpay/dash.git /dash

RUN mkdir base_cache sources SDKs

WORKDIR /dash
Loading