# Gitea Installer Installs Gitea as a systemd service # Linux Just follow these instructions: ```bash # Create a 'gitea' user and group with the home /opt/gitea sudo adduser gitea --home /opt/gitea # Make some other potentially useful directories for that user/group sudo mkdir -p /opt/gitea/ /var/log/gitea sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea # Download and install gitea sudo wget -O /opt/gitea/gitea https://dl.gitea.io/gitea/1.0.1/gitea-1.0.1-linux-amd64 sudo chmod +x gitea # Download and install the gitea.service for systemd sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer/raw/master/dist/etc/systemd/system/gitea.service # Start gitea sudo systemctl restart gitea ``` # Troubleshooting ## Error 226/Namespace Most likely a directory that is supposed to be writable doesn't exist. ## Failed to get repository owner (foobar): no such table: user Your `custom/conf/app.ini` has a line like this: ``` [database] DB_TYPE = sqlite3 PATH = data/gitea.db ``` And it should probably look like this instead: ``` [database] DB_TYPE = sqlite3 PATH = /opt/gitea/data/gitea.db ``` ## Gitea: Invalid key ID ``` Gitea: Invalid key ID Invalid key ID[key-2]: public key does not exist [id: 2] fatal: Could not read from remote repository. Please make sure you have the correct access rights ``` You are connecting to gitea with a different ssh key (usually `id_rsa.pub`) than the one you uploaded. You can usually fix this by uploading your default key or by manually specifying which key to use, for example: `~/.ssh/config`: ``` Host git.example.com User gitea IdentityFile ~/.ssh/id_rsa ``` ## Expect user 'foobar' but current user is: gitea ``` remote: 2017/10/25 23:53:10 [...s/setting/setting.go:625 NewContext()] [E] Expect user 'aj' but current user is: gitea remote: error: hook declined to update refs/heads/master To ssh://git.coolaj86.com:22042/coolaj86/hexdump.js.git ! [remote rejected] master -> master (hook declined) error: failed to push some refs to 'ssh://gitea@git.coolaj86.com:22042/coolaj86/hexdump.js.git' ``` If you copied a previous installation of gitea over to a new user, you may get this error. I haven't yet found where it comes from, but deleting the repository in the UI and re-adding it seems to do the trick from what I can tell. Remember to `git fetch --all` first before deleting.