mirror of
https://github.com/plebbit/seedit.git
synced 2026-01-06 04:48:22 -05:00
63 lines
1.4 KiB
Bash
Executable File
63 lines
1.4 KiB
Bash
Executable File
root_path=$(cd `dirname $0` && cd .. && pwd)
|
|
cd "$root_path"
|
|
|
|
# install node_modules
|
|
if [[ ! -f node_modules ]]
|
|
then
|
|
yarn || { echo "Error: failed installing 'node_modules' with 'yarn'" ; exit 1; }
|
|
fi
|
|
|
|
# download ipfs clients
|
|
node electron/download-ipfs || { echo "Error: failed script 'node electron/download-ipfs'" ; exit 1; }
|
|
|
|
dockerfile='
|
|
FROM electronuserland/builder:16
|
|
|
|
# install node_modules
|
|
WORKDIR /usr/src/seedit
|
|
COPY ./package.json .
|
|
COPY ./yarn.lock .
|
|
RUN yarn
|
|
|
|
# build native dependencies like sqlite3
|
|
RUN electron-builder install-app-deps
|
|
|
|
# copy source files
|
|
COPY ./bin ./bin
|
|
COPY ./electron ./electron
|
|
COPY ./src ./src
|
|
COPY ./public ./public
|
|
|
|
# required or yarn build fails
|
|
COPY ./.eslintrc.json ./.eslintrc.json
|
|
COPY ./.prettierrc ./.prettierrc
|
|
|
|
# react build
|
|
RUN yarn build
|
|
'
|
|
|
|
# build electron-builder docker image
|
|
# temporary .dockerignore to save build time
|
|
echo $'node_modules\ndist' > .dockerignore
|
|
echo "$dockerfile" | sudo docker build \
|
|
. \
|
|
--tag seedit-electron-builder \
|
|
--file -
|
|
rm .dockerignore
|
|
|
|
# build linux binary
|
|
sudo docker run \
|
|
--name seedit-electron-builder \
|
|
--volume "$root_path"/dist:/usr/src/seedit/dist \
|
|
--rm \
|
|
seedit-electron-builder \
|
|
yarn electron:build:linux
|
|
|
|
# build windows binary
|
|
sudo docker run \
|
|
--name seedit-electron-builder \
|
|
--volume "$root_path"/dist:/usr/src/seedit/dist \
|
|
--rm \
|
|
seedit-electron-builder \
|
|
yarn electron:build:windows
|