-
Notifications
You must be signed in to change notification settings - Fork 0
/
gogs-root.sh
executable file
·63 lines (61 loc) · 1.95 KB
/
gogs-root.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/bin/tcsh
echo "FreeNAS Gogs installation script."
echo "This has been tested on:"
echo " 9.3-RELEASE-p29"
echo
echo
echo "Press any key to begin"
set jnk = $<
if ( -f /usr/locat/etc/rc.d/gogs ) then
echo "Updating Gogs..."
echo
# Stop Gogs service
service gogs stop
./gogs-compile.sh
echo "Update Done!"
else
# 3) Enable SSH
echo "Enabling SSH"
/usr/bin/sed -i '.bak' 's/sshd_enable="NO"/sshd_enable="YES"/g' /etc/rc.conf
# Generate root keys & Enable root login (with SSH keys).
echo "Enabling root login without password"
echo "PermitRootLogin without-password" >> /etc/ssh/sshd_config
# Start SSH
echo "Starting SSH Service"
/usr/sbin/service sshd start
# 4) Update packages and upgrade any.
echo "Updating packages"
/usr/sbin/pkg update -f
echo "Upgrading packages"
/usr/sbin/pkg upgrade -y
echo "Installing memcached, redis & go"
/usr/sbin/pkg install -y memcached redis go git bash
echo "Enabling & starting memcached & redis"
echo memcached_enable="YES" >> /etc/rc.conf
echo redis_enable="YES" >> /etc/rc.conf
/usr/sbin/service memcached start
/usr/sbin/service redis start
# 5) Create user first; installing git will install a git user to 1001
echo "Creating git user"
setenv GITHOME /usr/home/git/
mkdir -p $GITHOME
if (! -d /home ) then
/bin/ln -s /usr/home /home
endif
pw add user -n git -u 913 -d $GITHOME -s /bin/tcsh -c "Gogs - Go Git Service"
chown -R git:git $GITHOME
su - git -c "/usr/bin/ssh-keygen -b 2048 -N '' -f ~/.ssh/id_rsa -t rsa -q &"
# 6) Get & compile gogs
gogs-compile.sh
su - git -c "ln -s /usr/home/git/.ssh/ /usr/home/git/gogs/"
# 7) Start up scripts
echo gogs_enable="YES" >> /etc/rc.conf
endif
# cleaning this mess
su - git -c "rm -rf /usr/home/git/go/"
service gogs start
echo
echo
echo
echo "Gogs should be running on port 3000 on the following addresses:"
ifconfig | grep inet