Skip to content

Instantly share code, notes, and snippets.

@shanecav84
Created August 18, 2019 22:26
Show Gist options
  • Save shanecav84/3598a253b009bf11d0d1bc5955f8d082 to your computer and use it in GitHub Desktop.
Save shanecav84/3598a253b009bf11d0d1bc5955f8d082 to your computer and use it in GitHub Desktop.
pubstrate (test.activitypub.rocks)
FROM ubuntu:18.04
SHELL ["/bin/bash", "-c"]
RUN apt-get update
RUN apt-get install -y \
autoconf \
g++ \
gcc \
git \
guile-2.2 \
guile-2.2-dev \
wget
ENV PATH /root/.guix-profile/bin:$PATH
# Set up guix
# Based on https://guix.gnu.org/manual/en/html_node/Binary-Installation.html
WORKDIR /tmp
RUN wget https://ftp.gnu.org/gnu/guix/guix-binary-1.0.1.x86_64-linux.tar.xz
RUN tar xJf guix-binary-1.0.1.x86_64-linux.tar.xz
RUN mv var/guix /var/ && mv gnu /
RUN mkdir -p ~root/.config/guix
RUN ln -sf /var/guix/profiles/per-user/root/current-guix ~root/.config/guix/current
RUN groupadd --system guixbuild
RUN for i in `seq -w 1 10`; \
do \
useradd -g guixbuild -G guixbuild \
-d /var/empty -s `which nologin` \
-c "Guix build user $i" --system \
guixbuilder$i; \
done
RUN mkdir -p /usr/local/bin
RUN cd /usr/local/bin && ln -s /var/guix/profiles/per-user/root/current-guix/bin/guix
RUN guix archive --authorize < ~root/.config/guix/current/share/guix/ci.guix.gnu.org.pub
# Manual instructions
# Shell in to the image and run the following:
# source ~root/.config/guix/current/etc/profile && guix-daemon --build-users-group=guixbuild &
# git clone https://gitlab.com/dustyweb/pubstrate.git ~/pubstrate
# cd ~/pubstrate
# ./bootstrap.sh && ./configure
# guix environment -l guix.scm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment