1
0
Fork 0

Have choice between source and prebuilt
the build failed Details

main
Ambrose Chua 2018-10-09 21:27:39 +08:00
parent 76938b710d
commit 35cd53aa2a
13 changed files with 224 additions and 170 deletions

View File

@ -9,8 +9,10 @@ RUN adduser -s /bin/zsh -D ambrose
WORKDIR /home/ambrose
COPY --chown=ambrose:ambrose . .
# install tools from source
# install tools
# repositories
RUN ./.install/repositories.sh
# system
RUN ./.install/core.sh
RUN ./.install/sdk.sh
@ -18,11 +20,11 @@ RUN ./.install/sudo.sh
RUN ./.install/archival.sh
RUN ./.install/git.sh
RUN ./.install/zsh.sh
RUN ./.install/neovim.sh
RUN ./.install/neovim-source.sh
# languages
RUN ./.install/python.sh
RUN ./.install/golang.sh
RUN ./.install/node.sh
RUN ./.install/golang-source.sh
RUN ./.install/node-source.sh
#RUN ./.install/jdk.sh
# switch to user
@ -43,9 +45,10 @@ RUN ./.install/vgo.sh
RUN ./.install/packr.sh
RUN ./.install/caddy.sh
RUN ./.install/kubectl.sh
#RUN ./.install/gradlr.sh
RUN ./.install/yarn.sh
#RUN ./.install/grunt.sh
#RUN ./.install/gulp.sh
#RUN ./.install/gradlr.sh
# open login shell by default

View File

@ -26,6 +26,7 @@ pipeline:
group: test
image: alpine:latest
commands:
- ./.install/sudo.sh
- ./.install/pure.sh
when:
status: [ failure, success ]
@ -33,6 +34,7 @@ pipeline:
group: test
image: alpine:latest
commands:
- ./.install/sudo.sh
- ./.install/thefuck.sh
- thefuck -v
when:
@ -41,6 +43,7 @@ pipeline:
group: test
image: alpine:latest
commands:
- ./.install/sudo.sh
- ./.install/yadm.sh
- yadm version
when:
@ -61,6 +64,14 @@ pipeline:
commands:
- ./.install/node.sh
- node -e "console.log(process.versions)"
when:
status: [ failure, success ]
test-yarn:
group: test
image: alpine:latest
commands:
- ./.install/node.sh
- ./.install/yarn.sh
- yarn --version
when:
status: [ failure, success ]
@ -85,6 +96,7 @@ pipeline:
group: test
image: alpine:latest
commands:
- ./.install/sudo.sh
- ./.install/kubectl.sh
- kubectl version -c
when:

View File

@ -3,7 +3,7 @@
set -e
echo
echo "Installing sway..."
echo "Installing sway and dependencies..."
echo
apk add --no-cache \

10
.install/docker.sh Executable file
View File

@ -0,0 +1,10 @@
#!/bin/sh
set -e
echo
echo "Installing docker..."
echo
apk add --no-cache \
docker@community

41
.install/golang-source.sh Executable file
View File

@ -0,0 +1,41 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing Go $GOLANG_VERSION..."
echo
apk add --no-cache \
git
apk add --no-cache --virtual .build-deps \
bash \
gcc \
musl-dev \
openssl \
wget \
tar \
go
GOROOT_BOOTSTRAP="$(go env GOROOT)"
GOOS="$(go env GOOS)"
GOARCH="$(go env GOARCH)"
GOHOSTOS="$(go env GOHOSTOS)"
GOHOSTARCH="$(go env GOHOSTARCH)"
wget -O go.tgz "https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz"
echo "$GOLANG_HASH *go.tgz" | sha256sum -c -
tar -C /usr/local -xzf go.tgz
rm go.tgz
cd /usr/local/go/src
./make.bash
# symlink into /usr/local/bin
ln -s /usr/local/go/bin/* /usr/local/bin/
apk del .build-deps

View File

@ -1,41 +1,10 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing Go $GOLANG_VERSION..."
echo
echo "Installing Go from repositories..."
echo
apk add --no-cache \
git
apk add --no-cache --virtual .build-deps \
bash \
gcc \
musl-dev \
openssl \
wget \
tar \
go
GOROOT_BOOTSTRAP="$(go env GOROOT)"
GOOS="$(go env GOOS)"
GOARCH="$(go env GOARCH)"
GOHOSTOS="$(go env GOHOSTOS)"
GOHOSTARCH="$(go env GOHOSTARCH)"
wget -O go.tgz "https://golang.org/dl/go$GOLANG_VERSION.src.tar.gz"
echo "$GOLANG_HASH *go.tgz" | sha256sum -c -
tar -C /usr/local -xzf go.tgz
rm go.tgz
cd /usr/local/go/src
./make.bash
# symlink into /usr/local/bin
ln -s /usr/local/go/bin/* /usr/local/bin/
apk del .build-deps
go@community

49
.install/neovim-source.sh Executable file
View File

@ -0,0 +1,49 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing neovim $NEOVIM_VERSION..."
echo
apk add --no-cache \
gettext \
unibilium \
libtermkey \
libvterm \
libgcc \
python3 \
clang-libs # For deoplete-clang
apk add --no-cache --virtual .build-deps \
curl \
git \
unzip \
build-base \
autoconf \
automake \
cmake \
libtool \
gettext-dev \
unibilium-dev \
libtermkey-dev \
libvterm-dev \
python3-dev \
python3
git clone https://github.com/neovim/neovim.git
cd neovim
if [ "$NEOVIM_VERSION" = "nightly" ]; then
git checkout $NEOVIM_VERSION
else
git checkout v$NEOVIM_VERSION
fi
make CMAKE_EXTRA_FLAGS=-DENABLE_JEMALLOC=OFF >/dev/null || make
make install
cd ..
rm -rf neovim
pip3 install neovim
apk del .build-deps

View File

@ -1,49 +1,10 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing neovim $NEOVIM_VERSION..."
echo
echo "Installing neovim from repositories..."
echo
apk add --no-cache \
gettext \
unibilium \
libtermkey \
libvterm \
libgcc \
python3 \
clang-libs # For deoplete-clang
apk add --no-cache --virtual .build-deps \
curl \
git \
unzip \
build-base \
autoconf \
automake \
cmake \
libtool \
gettext-dev \
unibilium-dev \
libtermkey-dev \
libvterm-dev \
python3-dev \
python3
git clone https://github.com/neovim/neovim.git
cd neovim
if [ "$NEOVIM_VERSION" = "nightly" ]; then
git checkout $NEOVIM_VERSION
else
git checkout v$NEOVIM_VERSION
fi
make CMAKE_EXTRA_FLAGS=-DENABLE_JEMALLOC=OFF >/dev/null || make
make install
cd ..
rm -rf neovim
pip3 install neovim
apk del .build-deps
neovim@community

57
.install/node-source.sh Executable file
View File

@ -0,0 +1,57 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing Node.js $NODE_VERSION..."
echo
apk add --no-cache \
libstdc++
apk add --no-cache --virtual .build-deps \
binutils-gold \
curl \
g++ \
gcc \
gnupg \
libgcc \
linux-headers \
make \
python \
xz
for key in \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
FD3A5288F042B6850C66B31F09FE44734EB7990E \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
B9AE9905FFD7803F25714661B63B535A4C206CA9 \
56730D5401028683275BD23C23EFEFE93C4CFFFE \
77984A986EBC2AA786BC0F66B01FBB92821C587A \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
; do
gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" ||
gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" ||
gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key"
done
curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz"
curl -SLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc"
gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc
grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c -
tar -xf "node-v$NODE_VERSION.tar.xz"
cd "node-v$NODE_VERSION"
./configure
make -j$(getconf _NPROCESSORS_ONLN) >/dev/null || make
make install
apk del .build-deps
cd ..
rm -Rf "node-v$NODE_VERSION"
rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt

View File

@ -1,86 +1,11 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing Node.js $NODE_VERSION..."
echo
echo "Installing nodejs from repositories..."
echo
apk add --no-cache \
libstdc++
apk add --no-cache --virtual .build-deps \
binutils-gold \
curl \
g++ \
gcc \
gnupg \
libgcc \
linux-headers \
make \
python \
xz
for key in \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
FD3A5288F042B6850C66B31F09FE44734EB7990E \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
B9AE9905FFD7803F25714661B63B535A4C206CA9 \
56730D5401028683275BD23C23EFEFE93C4CFFFE \
77984A986EBC2AA786BC0F66B01FBB92821C587A \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
; do
gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" ||
gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" ||
gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key"
done
curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz"
curl -SLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc"
gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc
grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c -
tar -xf "node-v$NODE_VERSION.tar.xz"
cd "node-v$NODE_VERSION"
./configure
make -j$(getconf _NPROCESSORS_ONLN) >/dev/null || make
make install
apk del .build-deps
cd ..
rm -Rf "node-v$NODE_VERSION"
rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt
echo
echo "Installing Yarn $YARN_VERSION..."
echo
apk add --no-cache --virtual .build-deps-yarn \
curl \
gnupg \
tar
for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do
gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" ||
gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" ||
gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key"
done
curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz"
curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc"
gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz
mkdir -p /opt
tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/
ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn
ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg
rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz
apk del .build-deps-yarn
nodejs@community

View File

@ -1,10 +0,0 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing vgo..."
echo
go get -u golang.org/x/vgo

34
.install/yarn.sh Executable file
View File

@ -0,0 +1,34 @@
#!/bin/sh
set -e
source ./.versions
echo
echo "Installing Yarn $YARN_VERSION..."
echo
sudo apk add --no-cache --virtual .build-deps-yarn \
curl \
gnupg \
tar
for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do
gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" ||
gpg --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" ||
gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key"
done
curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz"
curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc"
gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz
mkdir -p ~/.local/lib/
tar -xzf yarn-v$YARN_VERSION.tar.gz -C ~/.local/lib
ln -s ../lib/yarn-v$YARN_VERSION/bin/yarn ~/.local/bin/yarn
ln -s ../lib/yarn-v$YARN_VERSION/bin/yarnpkg ~/.local/bin/yarnpkg
rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz
sudo apk del .build-deps-yarn

3
.local/bin/brightness Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
echo $1 | tee /sys/class/backlight/intel_backlight/brightness