Move back to go implementation of ipfs
This commit is contained in:
parent
28d3640c6d
commit
5ec40daaf3
|
@ -31,9 +31,11 @@ Install the freedombone commands onto your laptop/desktop:
|
||||||
|
|
||||||
Then install packages needed for building images:
|
Then install packages needed for building images:
|
||||||
|
|
||||||
sudo apt-get -y install python-docutils mktorrent vmdebootstrap xz-utils
|
|
||||||
sudo apt-get -y install dosfstools btrfs-tools extlinux python-distro-info mbr
|
sudo apt-get -y install build-essential git python-docutils mktorrent
|
||||||
sudo apt-get -y install qemu-user-static binfmt-support u-boot-tools qemu
|
sudo apt-get -y install vmdebootstrap xz-utils dosfstools btrfs-tools extlinux
|
||||||
|
sudo apt-get -y install python-distro-info mbr qemu-user-static binfmt-support
|
||||||
|
sudo apt-get -y install u-boot-tools qemu
|
||||||
|
|
||||||
A typical use case to build an 8GB image for a Beaglebone Black is as follows. You can change the size depending upon the capacity of your microSD card.
|
A typical use case to build an 8GB image for a Beaglebone Black is as follows. You can change the size depending upon the capacity of your microSD card.
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,8 @@ First you will need to create an image.
|
||||||
|
|
||||||
#+begin_src bash
|
#+begin_src bash
|
||||||
sudo su
|
sudo su
|
||||||
apt-get -y install build-essential git python-docutils mktorrent \
|
apt-get -y install build-essential libc6-dev-i386 \
|
||||||
|
gcc-multilib g++-multilib git python-docutils mktorrent \
|
||||||
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux \
|
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux \
|
||||||
python-distro-info mbr qemu-user-static binfmt-support \
|
python-distro-info mbr qemu-user-static binfmt-support \
|
||||||
u-boot-tools qemu
|
u-boot-tools qemu
|
||||||
|
|
|
@ -24,7 +24,8 @@ First you will need to create an image.
|
||||||
|
|
||||||
#+begin_src bash
|
#+begin_src bash
|
||||||
sudo su
|
sudo su
|
||||||
apt-get -y install build-essential git python-docutils mktorrent \
|
apt-get -y install build-essential libc6-dev-i386 \
|
||||||
|
gcc-multilib g++-multilib git python-docutils mktorrent \
|
||||||
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux \
|
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux \
|
||||||
python-distro-info mbr qemu-user-static binfmt-support \
|
python-distro-info mbr qemu-user-static binfmt-support \
|
||||||
u-boot-tools qemu
|
u-boot-tools qemu
|
||||||
|
|
Binary file not shown.
|
@ -227,6 +227,7 @@ npm install -g n@${IPFS_N_VERSION} --save
|
||||||
n ${IPFS_NODE_VERSION}
|
n ${IPFS_NODE_VERSION}
|
||||||
npm install -g ronin@${IPFS_JS_RONIN_VERSION} --save
|
npm install -g ronin@${IPFS_JS_RONIN_VERSION} --save
|
||||||
npm install -g ipfs@${IPFS_JS_VERSION} --save
|
npm install -g ipfs@${IPFS_JS_VERSION} --save
|
||||||
|
exit 0
|
||||||
EOF
|
EOF
|
||||||
chroot ${rootdir} chmod +x /root/install-ipfs.sh
|
chroot ${rootdir} chmod +x /root/install-ipfs.sh
|
||||||
chroot ${rootdir} /root/install-ipfs.sh
|
chroot ${rootdir} /root/install-ipfs.sh
|
||||||
|
@ -375,8 +376,98 @@ function install_ipfs_js {
|
||||||
echo 'install_ipfs_js' >> $COMPLETION_FILE
|
echo 'install_ipfs_js' >> $COMPLETION_FILE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function mesh_install_ipfs_go {
|
||||||
|
chroot ${rootdir} apt-get -y install golang libpam0g-dev fuse
|
||||||
|
|
||||||
|
mesh_upgrade_golang
|
||||||
|
|
||||||
|
GOPATH=/home/git/gvm/pkgsets/go${GO_VERSION}/global
|
||||||
|
|
||||||
|
cat <<EOF > ${rootdir}/root/install_ipfs_go.sh
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ ! -d /home/git ]; then
|
||||||
|
adduser --disabled-login --gecos 'Gogs' git
|
||||||
|
|
||||||
|
# install Go
|
||||||
|
if ! grep -q "export GOPATH=" ~/.bashrc; then
|
||||||
|
echo "export GOPATH=\$GOPATH" >> ~/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|export GOPATH=.*|export GOPATH=\$GOPATH|g" ~/.bashrc
|
||||||
|
fi
|
||||||
|
systemctl set-environment GOPATH=\$GOPATH
|
||||||
|
if ! grep -q "systemctl set-environment GOPATH=" ~/.bashrc; then
|
||||||
|
echo "systemctl set-environment GOPATH=\$GOPATH" >> ~/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|systemctl set-environment GOPATH=.*|systemctl set-environment GOPATH=\$GOPATH|g" ~/.bashrc
|
||||||
|
fi
|
||||||
|
if [ ! -d \$GOPATH ]; then
|
||||||
|
mkdir -p \$GOPATH
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
IPFS_PATH=\$GOPATH/bin
|
||||||
|
export PATH="\$GOPATH/bin:\$PATH:"
|
||||||
|
if ! grep -q 'GOPATH/bin' ~/.bashrc; then
|
||||||
|
echo 'export PATH="\$GOPATH/bin:\$PATH:";' >> ~/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|systemctl set-environment GOPATH=.*|systemctl set-environment GOPATH=\$GOPATH|g" ~/.bashrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set gopath for the user
|
||||||
|
if ! grep -q "GOPATH=" /home/$MY_USERNAME/.bashrc; then
|
||||||
|
echo "export GOPATH=$GOPATH" >> /home/$MY_USERNAME/.bashrc
|
||||||
|
echo 'export PATH="\$GOPATH/bin:\$PATH:";' >> /home/$MY_USERNAME/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|export GOPATH=.*|export GOPATH=\$GOPATH|g" /home/$MY_USERNAME/.bashrc
|
||||||
|
fi
|
||||||
|
chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/.bashrc
|
||||||
|
|
||||||
|
IPFS_GO_REPO2=$(echo "$IPFS_GO_REPO" | sed 's|https://||g')
|
||||||
|
go get -u ${IPFS_GO_REPO2}/cmd/ipfs
|
||||||
|
if [ ! "$?" = "0" ]; then
|
||||||
|
exit 8242
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd \$GOPATH/src/$IPFS_GO_REPO2
|
||||||
|
git checkout $IPFS_COMMIT -b $IPFS_COMMIT
|
||||||
|
exit 0
|
||||||
|
EOF
|
||||||
|
chroot ${rootdir} chmod +x /root/install_ipfs_go.sh
|
||||||
|
chroot ${rootdir} /root/install_ipfs_go.sh
|
||||||
|
if [ ! "$?" = "0" ]; then
|
||||||
|
echo $'Failed to install ipfs go'
|
||||||
|
cat ${rootdir}/root/install_ipfs_go.sh
|
||||||
|
rm -f ${rootdir}/root/install_ipfs_go.sh
|
||||||
|
exit 365728
|
||||||
|
fi
|
||||||
|
chroot ${rootdir} rm -f /root/install_ipfs_go.sh
|
||||||
|
|
||||||
|
echo '[Unit]' > ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'Description=IPFS go daemon' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'After=syslog.target' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'After=network.target' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo '' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo '[Service]' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'Type=simple' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo "User=$MY_USERNAME" >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo "Group=$MY_USERNAME" >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo "WorkingDirectory=/home/$MY_USERNAME" >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo "ExecStart=$IPFS_PATH/ipfs daemon --mount" >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'Restart=on-failure' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo "Environment=\"USER=$MY_USERNAME\" \"HOME=/home/$MY_USERNAME\" \"GOPATH=$GOPATH\" \"GVM_ROOT=$GVM_HOME\"" >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo '' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo '[Install]' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
echo 'WantedBy=multi-user.target' >> ${rootdir}/etc/systemd/system/ipfs.service
|
||||||
|
|
||||||
|
chroot ${rootdir} systemctl enable ipfs
|
||||||
|
}
|
||||||
|
|
||||||
function install_ipfs_go {
|
function install_ipfs_go {
|
||||||
|
if [ $INSTALLING_MESH ]; then
|
||||||
|
mesh_install_ipfs_go
|
||||||
|
return
|
||||||
|
fi
|
||||||
if grep -Fxq "install_ipfs_go" $COMPLETION_FILE; then
|
if grep -Fxq "install_ipfs_go" $COMPLETION_FILE; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
@ -506,6 +597,6 @@ function install_ipfs_go {
|
||||||
}
|
}
|
||||||
|
|
||||||
function install_ipfs {
|
function install_ipfs {
|
||||||
install_ipfs_js
|
#install_ipfs_js
|
||||||
#install_ipfs_go
|
install_ipfs_go
|
||||||
}
|
}
|
||||||
|
|
|
@ -726,15 +726,16 @@ function setup_amnesic_data {
|
||||||
function setup_ipfs {
|
function setup_ipfs {
|
||||||
IPFS_PATH=/usr/bin
|
IPFS_PATH=/usr/bin
|
||||||
IPFS_KEY_LENGTH=2048
|
IPFS_KEY_LENGTH=2048
|
||||||
|
IPFS_COMMAND=$IPFS_PATH/ipfs
|
||||||
|
|
||||||
su -c "$IPFS_PATH/jsipfs init -b $IPFS_KEY_LENGTH" - $MY_USERNAME
|
su -c "$IPFS_COMMAND init -b $IPFS_KEY_LENGTH" - $MY_USERNAME
|
||||||
if [ ! -d /home/$MY_USERNAME/.ipfs ]; then
|
if [ ! -d /home/$MY_USERNAME/.ipfs ]; then
|
||||||
echo "IPFS could not be initialised for user $MY_USERNAME" >> $INSTALL_LOG
|
echo "IPFS could not be initialised for user $MY_USERNAME" >> $INSTALL_LOG
|
||||||
exit 7358
|
exit 7358
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MY_IPFS_ID=/home/$MY_USERNAME/.ipfs-id
|
MY_IPFS_ID=/home/$MY_USERNAME/.ipfs-id
|
||||||
su -c "echo $($IPFS_PATH/jsipfs id | grep '\"ID\":' | awk -F '\"' '{print $4}') > $MY_IPFS_ID" - $MY_USERNAME
|
su -c "echo $($IPFS_COMMAND id | grep '\"ID\":' | awk -F '\"' '{print $4}') > $MY_IPFS_ID" - $MY_USERNAME
|
||||||
if [ ! -f $MY_IPFS_ID ]; then
|
if [ ! -f $MY_IPFS_ID ]; then
|
||||||
echo 'No IPFS identity was created' >> $INSTALL_LOG
|
echo 'No IPFS identity was created' >> $INSTALL_LOG
|
||||||
exit 37895
|
exit 37895
|
||||||
|
|
|
@ -28,7 +28,11 @@
|
||||||
# You should have received a copy of the GNU Affero General Public License
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
GO_VERSION=1.5
|
# For reasons unknown we initially have to upgrade to an intermediate version
|
||||||
|
# before getting to the version we want
|
||||||
|
GO_INTERMEDIATE_VERSION=1.4.2
|
||||||
|
|
||||||
|
GO_VERSION=1.6.3
|
||||||
|
|
||||||
GO_PACKAGE_MANAGER_REPO="https://github.com/gpmgo/gopm"
|
GO_PACKAGE_MANAGER_REPO="https://github.com/gpmgo/gopm"
|
||||||
GVM_HOME=/home/git/gvm
|
GVM_HOME=/home/git/gvm
|
||||||
|
@ -36,113 +40,235 @@ GVM_REPO="https://github.com/moovweb/gvm"
|
||||||
GVM_COMMIT='25ea8ae158e2861c92e2b22c458e60840157832f'
|
GVM_COMMIT='25ea8ae158e2861c92e2b22c458e60840157832f'
|
||||||
|
|
||||||
function select_go_version {
|
function select_go_version {
|
||||||
if [ ! -d $GVM_HOME/bin ]; then
|
if [ ! -d $GVM_HOME/bin ]; then
|
||||||
echo $'GVM was not installed'
|
echo $'GVM was not installed'
|
||||||
exit 629532
|
exit 629532
|
||||||
fi
|
fi
|
||||||
export GVM_ROOT=$GVM_HOME
|
export GVM_ROOT=$GVM_HOME
|
||||||
if ! grep -q "GVM_ROOT=" ~/.bashrc; then
|
if ! grep -q "GVM_ROOT=" ~/.bashrc; then
|
||||||
echo "export GVM_ROOT=$GVM_ROOT" >> ~/.bashrc
|
echo "export GVM_ROOT=$GVM_ROOT" >> ~/.bashrc
|
||||||
else
|
else
|
||||||
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_ROOT|g" ~/.bashrc
|
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_ROOT|g" ~/.bashrc
|
||||||
fi
|
fi
|
||||||
cd $GVM_ROOT/bin
|
cd $GVM_ROOT/bin
|
||||||
[[ -s "$GVM_ROOT/scripts/gvm" ]] && source "$GVM_ROOT/scripts/gvm"
|
[[ -s "$GVM_ROOT/scripts/gvm" ]] && source "$GVM_ROOT/scripts/gvm"
|
||||||
gvm use go${GO_VERSION} --default
|
gvm use go${GO_VERSION} --default
|
||||||
systemctl set-environment GOPATH=$GOPATH
|
|
||||||
|
|
||||||
if [ ${#GOPATH} -lt 2 ]; then
|
if [ ${#GOPATH} -lt 2 ]; then
|
||||||
echo $'GOPATH was not set'
|
echo $'GOPATH was not set'
|
||||||
exit 629825
|
exit 629825
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
systemctl set-environment GOPATH=$GOPATH
|
||||||
|
}
|
||||||
|
|
||||||
|
function mesh_upgrade_golang {
|
||||||
|
cat <<EOF > ${rootdir}/root/upgrade_golang.sh
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
export GVM_ROOT=$GVM_HOME
|
||||||
|
|
||||||
|
apt-get -y install build-essential libc6-dev
|
||||||
|
apt-get -y install gcc-multilib g++-multilib make
|
||||||
|
apt-get -y install curl git mercurial binutils bison
|
||||||
|
if [ ! -d $INSTALL_DIR ]; then
|
||||||
|
mkdir $INSTALL_DIR
|
||||||
|
fi
|
||||||
|
cd $INSTALL_DIR
|
||||||
|
|
||||||
|
git clone $GVM_REPO gvm
|
||||||
|
|
||||||
|
cd $INSTALL_DIR/gvm
|
||||||
|
git checkout $GVM_COMMIT -b $GVM_COMMIT
|
||||||
|
if [ ! -f binscripts/gvm-installer ]; then
|
||||||
|
echo $'gvm installer not found'
|
||||||
|
fi
|
||||||
|
chmod +x binscripts/gvm-installer
|
||||||
|
|
||||||
|
if [ -d /root/.gvm ]; then
|
||||||
|
rm -rf /root/.gvm
|
||||||
|
fi
|
||||||
|
if [ -d $GVM_HOME ]; then
|
||||||
|
rm -rf $GVM_HOME
|
||||||
|
fi
|
||||||
|
if ! grep -q "export GVM_ROOT=" ~/.bashrc; then
|
||||||
|
echo "export GVM_ROOT=$GVM_HOME" >> ~/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_HOME|g" ~/.bashrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d /home/git ]; then
|
||||||
|
adduser --disabled-login --gecos 'Gogs' git
|
||||||
|
fi
|
||||||
|
if [ -d /home/git/Maildir ]; then
|
||||||
|
rm -rf /home/git/Maildir
|
||||||
|
fi
|
||||||
|
|
||||||
|
./binscripts/gvm-installer master /home/git
|
||||||
|
|
||||||
|
if [ ! -d $GVM_HOME ]; then
|
||||||
|
echo $'Unable to install gvm'
|
||||||
|
exit 83537
|
||||||
|
fi
|
||||||
|
|
||||||
|
[[ -s "$GVM_HOME/scripts/gvm" ]] && source "$GVM_HOME/scripts/gvm"
|
||||||
|
if [ ! -f $GVM_HOME/bin/gvm ]; then
|
||||||
|
echo $'gvm was not installed'
|
||||||
|
fi
|
||||||
|
if ! grep -q "export GVM_ROOT=" ~/.bashrc; then
|
||||||
|
echo "export GVM_ROOT=$GVM_HOME" >> ~/.bashrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $GVM_HOME/bin
|
||||||
|
|
||||||
|
$GVM_HOME/bin/gvm install go${GO_INTERMEDIATE_VERSION}
|
||||||
|
if [ ! "\$?" = "0" ]; then
|
||||||
|
echo $"Unable to install intermediate go version ${GO_INTERMEDIATE_VERSION}"
|
||||||
|
if [ -f $GVM_HOME/logs/go-go${GO_INTERMEDIATE_VERSION}-compile.log ]; then
|
||||||
|
cat $GVM_HOME/logs/go-go${GO_INTERMEDIATE_VERSION}-compile.log
|
||||||
|
fi
|
||||||
|
exit 352872
|
||||||
|
fi
|
||||||
|
|
||||||
|
export GOROOT_BOOTSTRAP=/home/git/gvm/gos/go${GO_INTERMEDIATE_VERSION}
|
||||||
|
|
||||||
|
$GVM_HOME/bin/gvm install go${GO_VERSION}
|
||||||
|
if [ ! "\$?" = "0" ]; then
|
||||||
|
echo $"Unable to install go version ${GO_VERSION}"
|
||||||
|
if [ -f $GVM_HOME/logs/go-go${GO_VERSION}-compile.log ]; then
|
||||||
|
cat $GVM_HOME/logs/go-go${GO_VERSION}-compile.log
|
||||||
|
fi
|
||||||
|
exit 529252
|
||||||
|
fi
|
||||||
|
|
||||||
|
chown -R git:git $GVM_HOME
|
||||||
|
|
||||||
|
if [ ! -d $GVM_HOME/bin ]; then
|
||||||
|
echo $'GVM was not installed'
|
||||||
|
exit 629532
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! grep -q "GVM_ROOT=" ~/.bashrc; then
|
||||||
|
echo "export GVM_ROOT=$GVM_HOME" >> ~/.bashrc
|
||||||
|
else
|
||||||
|
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_HOME|g" ~/.bashrc
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $GVM_HOME/bin
|
||||||
|
[[ -s "$GVM_HOME/scripts/gvm" ]] && source "$GVM_HOME/scripts/gvm"
|
||||||
|
#$GVM_HOME/bin/gvm use go${GO_VERSION} --default
|
||||||
|
#if [ ! "\$?" = "0" ]; then
|
||||||
|
# echo $"Unable to use go version ${GO_VERSION}"
|
||||||
|
# if [ -f $GVM_HOME/logs/go-go${GO_VERSION}-compile.log ]; then
|
||||||
|
# cat $GVM_HOME/logs/go-go${GO_VERSION}-compile.log
|
||||||
|
# fi
|
||||||
|
#fi
|
||||||
|
|
||||||
|
echo "export GOPATH=/home/git/gvm/pkgsets/go${GO_VERSION}/global" >> ~/.bashrc
|
||||||
|
export GOPATH=/home/git/gvm/pkgsets/go${GO_VERSION}/global
|
||||||
|
systemctl set-environment GOPATH=\$GOPATH
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
EOF
|
||||||
|
chroot ${rootdir} chmod +x /root/upgrade_golang.sh
|
||||||
|
chroot ${rootdir} /root/upgrade_golang.sh
|
||||||
|
if [ ! "$?" = "0" ]; then
|
||||||
|
echo $'Failed to upgrade golang'
|
||||||
|
cat ${rootdir}/root/upgrade_golang.sh
|
||||||
|
rm -f ${rootdir}/root/upgrade_golang.sh
|
||||||
|
exit 836535
|
||||||
|
fi
|
||||||
|
rm -f ${rootdir}/root/upgrade_golang.sh
|
||||||
}
|
}
|
||||||
|
|
||||||
function upgrade_golang {
|
function upgrade_golang {
|
||||||
if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
|
if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# NOTE: this is annoyingly hacky and going in the opposite
|
# NOTE: this is annoyingly hacky and going in the opposite
|
||||||
# direction of a pure blend, but it's necessary if you want
|
# direction of a pure blend, but it's necessary if you want
|
||||||
# to run the latest version of gogs
|
# to run the latest version of gogs
|
||||||
|
|
||||||
# update to the next commit
|
# update to the next commit
|
||||||
function_check set_repo_commit
|
function_check set_repo_commit
|
||||||
set_repo_commit $INSTALL_DIR/gvm "gvm commit" "$GVM_COMMIT" $GVM_REPO
|
set_repo_commit $INSTALL_DIR/gvm "gvm commit" "$GVM_COMMIT" $GVM_REPO
|
||||||
|
|
||||||
if grep -Fxq "upgrade_golang" $COMPLETION_FILE; then
|
if grep -Fxq "upgrade_golang" $COMPLETION_FILE; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export GVM_ROOT=$GVM_HOME
|
export GVM_ROOT=$GVM_HOME
|
||||||
|
|
||||||
apt-get -y install curl git mercurial make binutils bison gcc build-essential
|
apt-get -y install build-essential libc6-dev-i386 gcc-multilib g++-multilib
|
||||||
if [ ! -d $INSTALL_DIR ]; then
|
apt-get -y install gcc curl git mercurial make binutils bison
|
||||||
mkdir $INSTALL_DIR
|
if [ ! -d $INSTALL_DIR ]; then
|
||||||
fi
|
mkdir $INSTALL_DIR
|
||||||
cd $INSTALL_DIR
|
fi
|
||||||
function_check git_clone
|
cd $INSTALL_DIR
|
||||||
git_clone $GVM_REPO gvm
|
function_check git_clone
|
||||||
cd $INSTALL_DIR/gvm
|
git_clone $GVM_REPO gvm
|
||||||
git checkout $GVM_COMMIT -b $GVM_COMMIT
|
cd $INSTALL_DIR/gvm
|
||||||
if [ ! -f binscripts/gvm-installer ]; then
|
git checkout $GVM_COMMIT -b $GVM_COMMIT
|
||||||
echo $'gvm installer not found'
|
if [ ! -f binscripts/gvm-installer ]; then
|
||||||
fi
|
echo $'gvm installer not found'
|
||||||
chmod +x binscripts/gvm-installer
|
fi
|
||||||
|
chmod +x binscripts/gvm-installer
|
||||||
|
|
||||||
if [ -d /root/.gvm ]; then
|
if [ -d /root/.gvm ]; then
|
||||||
rm -rf /root/.gvm
|
rm -rf /root/.gvm
|
||||||
fi
|
fi
|
||||||
if [ -d $GVM_ROOT ]; then
|
if [ -d $GVM_ROOT ]; then
|
||||||
rm -rf $GVM_ROOT
|
rm -rf $GVM_ROOT
|
||||||
fi
|
fi
|
||||||
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_ROOT|g" ~/.bashrc
|
sed -i "s|export GVM_ROOT=.*|export GVM_ROOT=$GVM_ROOT|g" ~/.bashrc
|
||||||
|
|
||||||
if [ ! -d /home/git ]; then
|
if [ ! -d /home/git ]; then
|
||||||
# add a gogs user account within which the gvm home directory will exist
|
# add a gogs user account within which the gvm home directory will exist
|
||||||
adduser --disabled-login --gecos 'Gogs' git
|
adduser --disabled-login --gecos 'Gogs' git
|
||||||
fi
|
fi
|
||||||
if [ -d /home/git/Maildir ]; then
|
if [ -d /home/git/Maildir ]; then
|
||||||
rm -rf /home/git/Maildir
|
rm -rf /home/git/Maildir
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# TODO: this script is all over the place
|
# TODO: this script is all over the place
|
||||||
# and contains hardcoded github. See if you can do better
|
# and contains hardcoded github. See if you can do better
|
||||||
./binscripts/gvm-installer master /home/git
|
./binscripts/gvm-installer master /home/git
|
||||||
|
|
||||||
if [ ! -d $GVM_ROOT ]; then
|
if [ ! -d $GVM_ROOT ]; then
|
||||||
echo $'Unable to install gvm'
|
echo $'Unable to install gvm'
|
||||||
exit 83537
|
exit 83537
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[[ -s "$GVM_ROOT/scripts/gvm" ]] && source "$GVM_ROOT/scripts/gvm"
|
[[ -s "$GVM_ROOT/scripts/gvm" ]] && source "$GVM_ROOT/scripts/gvm"
|
||||||
if [ ! -f $GVM_ROOT/bin/gvm ]; then
|
if [ ! -f $GVM_ROOT/bin/gvm ]; then
|
||||||
echo $'gvm was not installed'
|
echo $'gvm was not installed'
|
||||||
fi
|
fi
|
||||||
if ! grep -q "export GVM_ROOT=" ~/.bashrc; then
|
if ! grep -q "export GVM_ROOT=" ~/.bashrc; then
|
||||||
echo "export GVM_ROOT=$GVM_ROOT" >> ~/.bashrc
|
echo "export GVM_ROOT=$GVM_ROOT" >> ~/.bashrc
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd $GVM_ROOT/bin
|
export GOROOT_BOOTSTRAP=$GOROOT
|
||||||
gvm install go1.4
|
|
||||||
gvm use go1.4
|
|
||||||
export GOROOT_BOOTSTRAP=$GOROOT
|
|
||||||
gvm install go${GO_VERSION}
|
|
||||||
if [ ! "$?" = "0" ]; then
|
|
||||||
echo $'Unable to upgrade golang'
|
|
||||||
exit 529252
|
|
||||||
fi
|
|
||||||
gvm use go${GO_VERSION} --default
|
|
||||||
|
|
||||||
chown -R git:git $GVM_HOME
|
cd $GVM_ROOT/bin
|
||||||
|
gvm install go${GO_INTERMEDIATE_VERSION}
|
||||||
|
gvm use go${GO_INTERMEDIATE_VERSION}
|
||||||
|
gvm install go${GO_VERSION}
|
||||||
|
if [ ! "$?" = "0" ]; then
|
||||||
|
echo $'Unable to upgrade golang'
|
||||||
|
exit 529252
|
||||||
|
fi
|
||||||
|
gvm use go${GO_VERSION} --default
|
||||||
|
|
||||||
if ! grep -q "gvm commit" $COMPLETION_FILE; then
|
chown -R git:git $GVM_HOME
|
||||||
echo "gvm commit:$GVM_COMMIT" >> $COMPLETION_FILE
|
|
||||||
else
|
|
||||||
sed -i "s/gvm commit.*/gvm commit:$GVM_COMMIT/g" $COMPLETION_FILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo 'upgrade_golang' >> $COMPLETION_FILE
|
if ! grep -q "gvm commit" $COMPLETION_FILE; then
|
||||||
|
echo "gvm commit:$GVM_COMMIT" >> $COMPLETION_FILE
|
||||||
|
else
|
||||||
|
sed -i "s/gvm commit.*/gvm commit:$GVM_COMMIT/g" $COMPLETION_FILE
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo 'upgrade_golang' >> $COMPLETION_FILE
|
||||||
}
|
}
|
||||||
|
|
||||||
# NOTE: deliberately there is no "exit 0"
|
# NOTE: deliberately there is no "exit 0"
|
||||||
|
|
|
@ -52,7 +52,8 @@ ZERONET_INDEX=$ZERONET_INSTALL/mesh.html
|
||||||
ZERONET_CONFIG=$ZERONET_INSTALL/bootstrap
|
ZERONET_CONFIG=$ZERONET_INSTALL/bootstrap
|
||||||
|
|
||||||
IPFS_PORT=4001
|
IPFS_PORT=4001
|
||||||
IPFS_COMMAND=/usr/bin/jsipfs
|
IPFS_PATH=/usr/bin
|
||||||
|
IPFS_COMMAND=$IPFS_PATH/ipfs
|
||||||
|
|
||||||
MY_BLOG_STR=$"My Blog"
|
MY_BLOG_STR=$"My Blog"
|
||||||
MY_MAIL_STR=$"My Mail"
|
MY_MAIL_STR=$"My Mail"
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- 2016-08-09 Tue 19:25 -->
|
<!-- 2016-08-14 Sun 13:17 -->
|
||||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<title></title>
|
<title></title>
|
||||||
|
@ -256,7 +256,8 @@ First you will need to create an image.
|
||||||
<div class="org-src-container">
|
<div class="org-src-container">
|
||||||
|
|
||||||
<pre class="src src-bash">sudo su
|
<pre class="src src-bash">sudo su
|
||||||
apt-get -y install build-essential git python-docutils mktorrent <span class="org-sh-escaped-newline">\</span>
|
apt-get -y install build-essential libc6-dev-i386 <span class="org-sh-escaped-newline">\</span>
|
||||||
|
gcc-multilib g++-multilib git python-docutils mktorrent <span class="org-sh-escaped-newline">\</span>
|
||||||
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux <span class="org-sh-escaped-newline">\</span>
|
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux <span class="org-sh-escaped-newline">\</span>
|
||||||
python-distro-info mbr qemu-user-static binfmt-support <span class="org-sh-escaped-newline">\</span>
|
python-distro-info mbr qemu-user-static binfmt-support <span class="org-sh-escaped-newline">\</span>
|
||||||
u-boot-tools qemu
|
u-boot-tools qemu
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
||||||
<head>
|
<head>
|
||||||
<!-- 2016-08-09 Tue 19:41 -->
|
<!-- 2016-08-14 Sun 13:19 -->
|
||||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<title></title>
|
<title></title>
|
||||||
|
@ -263,7 +263,8 @@ First you will need to create an image.
|
||||||
<div class="org-src-container">
|
<div class="org-src-container">
|
||||||
|
|
||||||
<pre class="src src-bash">sudo su
|
<pre class="src src-bash">sudo su
|
||||||
apt-get -y install build-essential git python-docutils mktorrent <span class="org-sh-escaped-newline">\</span>
|
apt-get -y install build-essential libc6-dev-i386 <span class="org-sh-escaped-newline">\</span>
|
||||||
|
gcc-multilib g++-multilib git python-docutils mktorrent <span class="org-sh-escaped-newline">\</span>
|
||||||
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux <span class="org-sh-escaped-newline">\</span>
|
vmdebootstrap xz-utils dosfstools btrfs-tools extlinux <span class="org-sh-escaped-newline">\</span>
|
||||||
python-distro-info mbr qemu-user-static binfmt-support <span class="org-sh-escaped-newline">\</span>
|
python-distro-info mbr qemu-user-static binfmt-support <span class="org-sh-escaped-newline">\</span>
|
||||||
u-boot-tools qemu
|
u-boot-tools qemu
|
||||||
|
|
Loading…
Reference in New Issue