Compare commits
	
		
			36 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 06586de3bc | |||
|  | 56cf425e46 | ||
|  | ad14316950 | ||
|  | ece1e705b0 | ||
|  | 09e97e86f3 | ||
| 5de77f0095 | |||
|  | 406b1b719b | ||
|  | 90d27beaf6 | ||
|  | f389c2cad2 | ||
|  | dcb820e844 | ||
|  | fdd890d441 | ||
|  | 9a00313a6a | ||
|  | 03bd5b5011 | ||
|  | c1a0669e6e | ||
|  | c5d75c1016 | ||
|  | 7806ec9773 | ||
|  | fb0d107416 | ||
|  | f421b83487 | ||
|  | 20fb4b7dfe | ||
|  | 91f4ecd3f8 | ||
| 8232bba348 | |||
| f1aad8be59 | |||
|  | 735958f8f9 | ||
|  | 7cb52884fc | ||
|  | 6f2ca3d312 | ||
|  | eb8dfc1af3 | ||
|  | 99f7a27ea2 | ||
| d75ad1a205 | |||
| 22937eb9b7 | |||
| 7a457b6a35 | |||
| 7b0b4f819a | |||
| 764458a74f | |||
| 902eaa71e2 | |||
| 6728663a8b | |||
| 09617dc377 | |||
| 8a3ebf85d2 | 
							
								
								
									
										84
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										84
									
								
								README.md
									
									
									
									
									
								
							| @ -1,50 +1,80 @@ | |||||||
| # Gitea Installer | # Gitea Installer | ||||||
| 
 | 
 | ||||||
| Installs [Gitea](https://gitea.io) (formerly gogs) as a systemd service | Installs [Gitea](https://gitea.io) (formerly Gogs) as a systemd service | ||||||
| 
 | 
 | ||||||
| # Easy Install (Linux) | # Easy Install (Linux) | ||||||
| 
 | 
 | ||||||
| You can download and run the installer script: | You can download and run the installer script using this command: | ||||||
| 
 | 
 | ||||||
| ```bash | `curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/install.bash | bash` | ||||||
| wget -O install-gitea.bash https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/master/install.bash |  | ||||||
| bash install-gitea.bash |  | ||||||
| ``` |  | ||||||
| 
 | 
 | ||||||
| # Screencast | <a href="https://youtu.be/dTvTBlzKqgg" target="_blank"><img title="How to install Gitea" alt="a screencast of me installing gitea and migrating one of my github repos" src="https://i.imgur.com/e4CZdBu.png"></a> | ||||||
| 
 | 
 | ||||||
| <a href="https://www.youtube.com/watch?v=dTvTBlzKqgg" target="_blank"><img src="https://i.imgur.com/9x8iCUO.png" alt="how to install Gitea" title="Gitea Screencast"/></a> | ## Specific Versions | ||||||
| 
 | 
 | ||||||
| # Manual Install | You can pick a specific version to install. For example, if you were nostalgic for 1.2.0, you could run: | ||||||
| 
 | 
 | ||||||
|  | `curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/install.bash | bash -s version 1.2.0` | ||||||
|  | 
 | ||||||
|  | # After Installing | ||||||
|  | 
 | ||||||
|  | Once you have gitea installed and running you must choose | ||||||
|  | which database to use, certain gitea paths, an admin user, etc. | ||||||
|  | 
 | ||||||
|  | Go to: http://localhost:3000/ | ||||||
|  | 
 | ||||||
|  | You should see these fields: | ||||||
|  | 
 | ||||||
|  | *The following is for basic usage with this script, for more advance usage see: [https://docs.gitea.io/en-us/customizing-gitea/](https://docs.gitea.io/en-us/customizing-gitea/)* | ||||||
|  | 
 | ||||||
|  | `Database Type:` Use SQLite3 for the database. | ||||||
|  | 
 | ||||||
|  | `Path:` Leave this alone. | ||||||
|  | 
 | ||||||
|  | `Application Name:` Give your Gitea server a fancy name. | ||||||
|  | 
 | ||||||
|  | `Repository Root Path:` Leave this alone. | ||||||
|  | 
 | ||||||
|  | `LFS Root Path:` Leave this alone. | ||||||
|  | 
 | ||||||
|  | `Run User:` Leave this alone. | ||||||
|  | 
 | ||||||
|  | `Domain:` Replace this with your domain name for the server. | ||||||
|  | 
 | ||||||
|  | `SSH Port:` Leave this alone unless you want a custom port for SSH. | ||||||
|  | 
 | ||||||
|  | `HTTP Port:` Change this if you want Gitea to serve on a different port. You don't usually need to, Gitea is usually used behind a web server. | ||||||
|  | 
 | ||||||
|  | `Application URL:` Enter the full URL for your Gitea instance, like https://example.com/ | ||||||
|  | 
 | ||||||
|  | `Log Path:` Leave this alone. | ||||||
|  | 
 | ||||||
|  | Click on "Admin Account Settings" to setup your user account and click "Install Gitea" when you are done. | ||||||
|  | 
 | ||||||
|  | ## Manual Install | ||||||
| 
 | 
 | ||||||
| Or manually install by reading these instructions and following along: | Or manually install by reading these instructions and following along: | ||||||
| 
 | 
 | ||||||
| ```bash | ```bash | ||||||
| # Create a 'gitea' user and group with the home /opt/gitea, no password (because it's a system user) and no GECOS | ### Create a 'gitea' user and group with the home /opt/gitea, no password (because it's a system user) and no GECOS | ||||||
| sudo adduser gitea --home /opt/gitea --disabled-password --gecos '' | sudo adduser gitea --home /opt/gitea --disabled-password --gecos '' | ||||||
| 
 | 
 | ||||||
| # Make some other potentially useful directories for that user/group | ### Make some other potentially useful directories for that user/group | ||||||
| sudo mkdir -p /opt/gitea/ /var/log/gitea | sudo mkdir -p /opt/gitea/ /var/log/gitea | ||||||
| sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea | sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea | ||||||
| 
 | 
 | ||||||
| # Download and install gitea | ### Download and install gitea. Replace "amd64" with "i386" for 32 bit x86 or "arm-7" for ARMv7 and "arm-6" for ARMv6. | ||||||
| sudo wget -O /opt/gitea/gitea https://dl.gitea.io/gitea/1.0.1/gitea-1.0.1-linux-amd64 | sudo wget -O /opt/gitea/gitea https://dl.gitea.io/gitea/1.4.1/gitea-1.4.1-linux-amd64 | ||||||
| sudo chmod +x /opt/gitea/gitea | sudo chmod +x /opt/gitea/gitea | ||||||
| 
 | 
 | ||||||
| # Download and install the gitea.service for systemd | ### Download and install the gitea.service for systemd | ||||||
| sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/master/dist/etc/systemd/system/gitea.service | sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/master/dist/etc/systemd/system/gitea.service | ||||||
| 
 | 
 | ||||||
| # Start gitea | ### Start gitea | ||||||
| sudo systemctl restart gitea | sudo systemctl restart gitea | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
| ## Gitea Web Setup (post install) | Then see the post-install instruction above. | ||||||
| 
 |  | ||||||
| Once you've gitea installed and running you must choose |  | ||||||
| which database to use, certain gitea paths, an admin user, etc. |  | ||||||
| 
 |  | ||||||
| > http://localhost:3000/ |  | ||||||
| 
 | 
 | ||||||
| ## Customize Gitea | ## Customize Gitea | ||||||
| 
 | 
 | ||||||
| @ -68,7 +98,6 @@ All overrides to the existing theme can be placed in the `custom/public` and `cu | |||||||
| * Change Landing Page | * Change Landing Page | ||||||
| * Google Analytics | * Google Analytics | ||||||
| 
 | 
 | ||||||
| 
 |  | ||||||
| ``` | ``` | ||||||
| /opt/gitea/custom/public | /opt/gitea/custom/public | ||||||
| /opt/gitea/custom/templates | /opt/gitea/custom/templates | ||||||
| @ -78,15 +107,24 @@ All overrides to the existing theme can be placed in the `custom/public` and `cu | |||||||
| /opt/gitea/custom/public/img/gitea-sm.png    # 880x880 logo on landing page | /opt/gitea/custom/public/img/gitea-sm.png    # 880x880 logo on landing page | ||||||
| 
 | 
 | ||||||
| /opt/gitea/custom/templates/home.tmpl        # The landing page | /opt/gitea/custom/templates/home.tmpl        # The landing page | ||||||
| /opt/gitea/custom/templates/base/head.tmpl   # Google Analytics | /opt/gitea/custom/templates/base/head.tmpl   # Google Analytics, Login with Github | ||||||
| ``` | ``` | ||||||
| 
 | 
 | ||||||
|  | * [Login with Github](https://git.coolaj86.com/coolaj86/gitea-installer.sh/src/tag/v1.0.0/custom/templates/base/head.tmpl#L277) | ||||||
|  | 
 | ||||||
| For many items, such as the logo, you can simply right-click "inspect" to discover the location. For example, the small logo is `/img/gitea-sm.png` or `/opt/gitea/custom/public/img/gitea-sm.png`. | For many items, such as the logo, you can simply right-click "inspect" to discover the location. For example, the small logo is `/img/gitea-sm.png` or `/opt/gitea/custom/public/img/gitea-sm.png`. | ||||||
| 
 | 
 | ||||||
| You can find more information about customization and templates in the docs and on github: | You can find more information about customization and templates in the docs and on github: | ||||||
| 
 | 
 | ||||||
| * https://docs.gitea.io/en-us/customizing-gitea/ | * https://docs.gitea.io/en-us/customizing-gitea/ | ||||||
| * https://github.com/go-gitea/gitea/tree/master/templates/ | * https://github.com/go-gitea/gitea/tree/master/templates/ | ||||||
|  | 
 | ||||||
| # Troubleshooting systemd | # Troubleshooting systemd | ||||||
| 
 | 
 | ||||||
| See [Troubleshooting systemd](https://git.coolaj86.com/coolaj86/service-installer.sh/src/master/README.md#troubleshooting-systemd) | See [Troubleshooting systemd](https://git.coolaj86.com/coolaj86/service-installer.sh/src/master/README.md#troubleshooting-systemd) | ||||||
|  | 
 | ||||||
|  | # Removing Gitea | ||||||
|  | 
 | ||||||
|  | Run this command to uninstall Gitea: (THIS WILL REMOVE ALL DATA if you are using SQLite!) | ||||||
|  | 
 | ||||||
|  | `curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/remove.bash | bash` | ||||||
|  | |||||||
							
								
								
									
										93
									
								
								install.bash
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							
							
						
						
									
										93
									
								
								install.bash
									
									
									
									
									
										
										
										Normal file → Executable file
									
								
							| @ -1,10 +1,33 @@ | |||||||
| #!/bin/bash | #!/bin/bash | ||||||
| 
 | 
 | ||||||
| VER=1.5.0 | # Most of the code credit for determining version is here: https://gist.github.com/lukechilds/a83e1d7127b78fef38c2914c4ececc3c | ||||||
|  | VER=$(curl --silent "https://api.github.com/repos/go-gitea/gitea/releases/latest" | # Get latest release from GitHub api | ||||||
|  |     grep '"tag_name":' |                                            # Get tag line | ||||||
|  |     sed -E 's/.*"([^"]+)".*/\1/'    |                               # Pluck JSON value | ||||||
|  |     sed 's|[v,]||g' )                                               # Remove v | ||||||
| 
 | 
 | ||||||
| # wget -O install-gitea.bash https://git.coolaj86.com/coolaj86/gitea-installer/raw/master/install.bash; bash install-gitea.bash | while [[ $# -gt 0 ]] | ||||||
| # or | do | ||||||
| # wget -O - https://git.coolaj86.com/coolaj86/gitea-installer/raw/master/install.bash | bash |   key="$1" | ||||||
|  | 
 | ||||||
|  |   case $key in | ||||||
|  |     -v|version) | ||||||
|  |     VER="$2" | ||||||
|  |     shift # past argument | ||||||
|  |     ;; | ||||||
|  |     *) | ||||||
|  |     # unknown option | ||||||
|  |     if test -z "${unknown}" | ||||||
|  |     then | ||||||
|  |       unknown=$1 | ||||||
|  |     else | ||||||
|  |       echo "Unknown Option" | ||||||
|  |       exit 1 | ||||||
|  |     fi | ||||||
|  |     ;; | ||||||
|  |   esac | ||||||
|  |   shift # past argument or value | ||||||
|  | done | ||||||
| 
 | 
 | ||||||
| # Create a 'gitea' user and group with the home /opt/gitea, no password (because it's a system user) and no GECOS | # Create a 'gitea' user and group with the home /opt/gitea, no password (because it's a system user) and no GECOS | ||||||
| sudo adduser gitea --home /opt/gitea --disabled-password --gecos '' | sudo adduser gitea --home /opt/gitea --disabled-password --gecos '' | ||||||
| @ -14,13 +37,36 @@ sudo mkdir -p /opt/gitea/ /var/log/gitea | |||||||
| sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea | sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea | ||||||
| 
 | 
 | ||||||
| # Download and install gitea | # Download and install gitea | ||||||
| sudo wget -O "/opt/gitea/gitea-$VER" "https://dl.gitea.io/gitea/$VER/gitea-$VER-linux-amd64" | 
 | ||||||
|  |   # Check if architecure is i386 and download Gitea | ||||||
|  | if [ -n "$(uname -a | grep i386)" ]; then | ||||||
|  |     sudo curl -fsSL -o "/opt/gitea/gitea-$VER" "https://dl.gitea.io/gitea/$VER/gitea-$VER-linux-386" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  |   # Check if architecure is x86 and download Gitea | ||||||
|  | if [ -n "$(uname -a | grep x86_64)" ]; then | ||||||
|  |   sudo curl -fsSL -o "/opt/gitea/gitea-$VER" "https://dl.gitea.io/gitea/$VER/gitea-$VER-linux-amd64" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | # Check if architecure is ARMv6 and download Gitea | ||||||
|  | if [ -n "$(uname -a | grep armv6l)" ]; then | ||||||
|  |   sudo curl -fsSL -o "/opt/gitea/gitea-$VER" "https://dl.gitea.io/gitea/$VER/gitea-$VER-linux-arm-6" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  |   # Check if architecure is ARMv7 and download Gitea | ||||||
|  | if [ -n "$(uname -a | grep armv7l)" ]; then | ||||||
|  |   sudo curl -fsSL -o "/opt/gitea/gitea-$VER" "https://dl.gitea.io/gitea/$VER/gitea-$VER-linux-arm-7" | ||||||
|  | fi | ||||||
|  | 
 | ||||||
|  | # Setup Gitea symlink and permissions | ||||||
|  | 
 | ||||||
| sudo chmod +x /opt/gitea/gitea-$VER | sudo chmod +x /opt/gitea/gitea-$VER | ||||||
| rm -f /opt/gitea/gitea | rm -f /opt/gitea/gitea | ||||||
| ln -sf gitea-$VER /opt/gitea/gitea | sudo ln -sf gitea-$VER /opt/gitea/gitea | ||||||
|  | sudo ln -sf gitea-$VER /usr/local/bin/gitea | ||||||
| 
 | 
 | ||||||
| # Download and install the gitea.service for systemd | # Download and install the gitea.service for systemd | ||||||
| sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/master/dist/etc/systemd/system/gitea.service | sudo curl -fsSL -o /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/dist/etc/systemd/system/gitea.service | ||||||
| 
 | 
 | ||||||
| # Start gitea | # Start gitea | ||||||
| sudo systemctl enable gitea | sudo systemctl enable gitea | ||||||
| @ -32,12 +78,37 @@ sudo systemctl enable gitea | |||||||
| # swapon /tmp.swap | # swapon /tmp.swap | ||||||
| sudo systemctl restart gitea | sudo systemctl restart gitea | ||||||
| 
 | 
 | ||||||
|  | set +e | ||||||
|  | my_ip=$(ifconfig | grep inet | grep Mask | grep -v ':127\\.0\\.0\\.1' | grep -v ':192\\.168'  | grep -v ':10\\.' | head -n 1 | cut -f 2 -d ':' | cut -f 1 -d ' ') | ||||||
|  | my_ip=${my_ip:-localhost} | ||||||
|  | set -e | ||||||
|  | 
 | ||||||
| echo "" | echo "" | ||||||
| echo "Please visit http://localhost:3000/ now to finish installing gitea" |  | ||||||
| echo "" | echo "" | ||||||
| echo "You may customize gitea" | echo "###########################" | ||||||
| echo "    templates can be seen at https://github.com/go-gitea/gitea/tree/v$VER/templates" | echo "#    Time to Configure    #" | ||||||
| echo "    app.ini.sample can be seen at https://github.com/go-gitea/gitea/blob/v$VER/custom/conf/app.ini.sample" | echo "###########################" | ||||||
|  | echo "" | ||||||
|  | echo "Just a few more steps to complete at the setup URL:" | ||||||
|  | echo "" | ||||||
|  | echo "        http://$my_ip:3000/" | ||||||
|  | echo "" | ||||||
|  | echo "Future changes can be made by editing the config file:" | ||||||
|  | echo "" | ||||||
|  | echo "        /opt/gitea/custom/conf/app.ini" | ||||||
|  | echo "" | ||||||
|  | echo "" | ||||||
|  | echo "P.S. Would you like to customize Gitea?" | ||||||
|  | echo "" | ||||||
|  | echo "        Read basic instructions:" | ||||||
|  | echo "        https://git.coolaj86.com/coolaj86/gitea-installer.sh/_edit/master/install.bash" | ||||||
|  | echo "" | ||||||
|  | echo "        View current templates:" | ||||||
|  | echo "        https://github.com/go-gitea/gitea/tree/v$VER/templates" | ||||||
|  | echo "" | ||||||
|  | echo "        See a sample app.ini:" | ||||||
|  | echo "        https://github.com/go-gitea/gitea/blob/v$VER/custom/conf/app.ini.sample" | ||||||
|  | echo "" | ||||||
| 
 | 
 | ||||||
| # sleep 5 | # sleep 5 | ||||||
| # swapoff /tmp.swap | # swapoff /tmp.swap | ||||||
|  | |||||||
							
								
								
									
										20
									
								
								remove.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								remove.sh
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | |||||||
|  | # Gitea Uninstall Script | ||||||
|  | # This script removes Gitea as installed by this script. THIS DELTES ALL DATA if you are using SQLite. | ||||||
|  | 
 | ||||||
|  | echo "Removing Gitea and DELETING ALL DATA." | ||||||
|  | 
 | ||||||
|  | echo "Stopping and removing the Gitea service." | ||||||
|  | sudo systemctl stop gitea # Stop the Gitea service | ||||||
|  | sudo systemctl disable gitea # Disable the Gitea service automatically starting on boot. | ||||||
|  | sudo rm /etc/systemd/system/gitea.service # Delete the Gitea service. | ||||||
|  | 
 | ||||||
|  | echo "Deleting Gitea configuration and Data." | ||||||
|  | 
 | ||||||
|  | sudo rm /usr/local/bin/gitea # Remove Gitea from Path | ||||||
|  | sudo rm -rf /opt/gitea # Remove Gitea Data | ||||||
|  | 
 | ||||||
|  | if test ! -d /opt/gitea | ||||||
|  |    echo "Gitea has been completely removed." | ||||||
|  | else | ||||||
|  |   echo "Gitea has not been completely removed. File an issue here: https://git.coolaj86.com/coolaj86/gitea-installer.sh/issues/new" | ||||||
|  | fi | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user