Skip to content

Commit 63de658

Browse files
authored
Merge branch 'master' into stopwatch-notif
2 parents c410478 + 1c230f6 commit 63de658

File tree

529 files changed

+8336
-4569
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

529 files changed

+8336
-4569
lines changed

.drone.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@ steps:
404404

405405
- name: update
406406
pull: default
407-
image: alpine:3.12
407+
image: alpine:3.13
408408
commands:
409409
- ./build/update-locales.sh
410410

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
###################################
33
#Build stage
4-
FROM golang:1.15-alpine3.12 AS build-env
4+
FROM golang:1.15-alpine3.13 AS build-env
55

66
ARG GOPROXY
77
ENV GOPROXY ${GOPROXY:-direct}
@@ -22,7 +22,7 @@ WORKDIR ${GOPATH}/src/code.gitea.io/gitea
2222
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi \
2323
&& make clean-all build
2424

25-
FROM alpine:3.12
25+
FROM alpine:3.13
2626
LABEL maintainer="[email protected]"
2727

2828
EXPOSE 22 3000

Dockerfile.rootless

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
###################################
33
#Build stage
4-
FROM golang:1.15-alpine3.12 AS build-env
4+
FROM golang:1.15-alpine3.13 AS build-env
55

66
ARG GOPROXY
77
ENV GOPROXY ${GOPROXY:-direct}
@@ -22,7 +22,7 @@ WORKDIR ${GOPATH}/src/code.gitea.io/gitea
2222
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi \
2323
&& make clean-all build
2424

25-
FROM alpine:3.12
25+
FROM alpine:3.13
2626
LABEL maintainer="[email protected]"
2727

2828
EXPOSE 2222 3000

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ fmt:
232232
vet:
233233
@echo "Running go vet..."
234234
@$(GO) vet $(GO_PACKAGES)
235-
@$(GO) build -mod=vendor code.gitea.io/gitea-vet
235+
@GOOS= GOARCH= $(GO) build -mod=vendor code.gitea.io/gitea-vet
236236
@$(GO) vet -vettool=gitea-vet $(GO_PACKAGES)
237237

238238
.PHONY: $(TAGS_EVIDENCE)

custom/conf/app.example.ini

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -688,6 +688,9 @@ AUTO_WATCH_NEW_REPOS = true
688688
; Default value for AutoWatchOnChanges
689689
; Make the user watch a repository When they commit for the first time
690690
AUTO_WATCH_ON_CHANGES = false
691+
; Default value for the minimum age a user has to exist before deletion to keep issue comments.
692+
; If a user deletes his account before that amount of days, his comments will be deleted as well.
693+
USER_DELETE_WITH_COMMENTS_MAX_DAYS = 0
691694

692695
[webhook]
693696
; Hook task queue length, increase if webhook shooting starts hanging
@@ -1095,6 +1098,10 @@ MAX_GIT_DIFF_LINES = 1000
10951098
MAX_GIT_DIFF_LINE_CHARACTERS = 5000
10961099
; Max number of files shown in diff view
10971100
MAX_GIT_DIFF_FILES = 100
1101+
; Set the default commits range size
1102+
COMMITS_RANGE_SIZE = 50
1103+
; Set the default branches range size
1104+
BRANCHES_RANGE_SIZE = 20
10981105
; Arguments for command 'git gc', e.g. "--aggressive --auto"
10991106
; see more on http://git-scm.com/docs/git-gc/
11001107
GC_ARGS =

docs/content/doc/advanced/config-cheat-sheet.en-us.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,7 @@ relation to port exhaustion.
474474
- `ALLOW_ONLY_EXTERNAL_REGISTRATION`: **false** Set to true to force registration only using third-party services.
475475
- `NO_REPLY_ADDRESS`: **DOMAIN** Default value for the domain part of the user's email address in the git log if he has set KeepEmailPrivate to true.
476476
The user's email will be replaced with a concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
477+
- `USER_DELETE_WITH_COMMENTS_MAX_DAYS`: **0** If a user deletes his account before that amount of days, his comments will be deleted as well.
477478

478479
## SSH Minimum Key Sizes (`ssh.minimum_key_sizes`)
479480

@@ -751,6 +752,8 @@ NB: You must `REDIRECT_MACARON_LOG` and have `DISABLE_ROUTER_LOG` set to `false`
751752
- `MAX_GIT_DIFF_LINES`: **100**: Max number of lines allowed of a single file in diff view.
752753
- `MAX_GIT_DIFF_LINE_CHARACTERS`: **5000**: Max character count per line highlighted in diff view.
753754
- `MAX_GIT_DIFF_FILES`: **100**: Max number of files shown in diff view.
755+
- `COMMITS_RANGE_SIZE`: **50**: Set the default commits range size
756+
- `BRANCHES_RANGE_SIZE`: **20**: Set the default branches range size
754757
- `GC_ARGS`: **\<empty\>**: Arguments for command `git gc`, e.g. `--aggressive --auto`. See more on http://git-scm.com/docs/git-gc/
755758
- `ENABLE_AUTO_GIT_WIRE_PROTOCOL`: **true**: If use git wire protocol version 2 when git version >= 2.18, default is true, set to false when you always want git wire protocol version 1
756759
- `PULL_REQUEST_PUSH_MESSAGE`: **true**: Respond to pushes to a non-default branch with a URL for creating a Pull Request (if the repository has them enabled)

docs/content/doc/advanced/customizing-gitea.en-us.md

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ the Linux Filesystem Standard. Gitea will attempt to create required folders, in
3030
`custom/`. Distributions may provide a symlink for `custom` using `/etc/gitea/`.
3131

3232
Application settings can be found in file `CustomConf` which is by default,
33-
`CustomPath/conf/app.ini` but may be different if your build has set this differently.
33+
`$GITEA_CUSTOM/conf/app.ini` but may be different if your build has set this differently.
3434
Again `gitea help` will allow you review this variable and you can override it using the
3535
`--config` option on the `gitea` binary.
3636

@@ -39,7 +39,8 @@ Again `gitea help` will allow you review this variable and you can override it u
3939

4040
If the `CustomPath` folder can't be found despite checking `gitea help`, check the `GITEA_CUSTOM`
4141
environment variable; this can be used to override the default path to something else.
42-
`GITEA_CUSTOM` might, for example, be set by an init script.
42+
`GITEA_CUSTOM` might, for example, be set by an init script. You can check whether the value
43+
is set under the "Configuration" tab on the site administration page.
4344

4445
- [List of Environment Variables](https://docs.gitea.io/en-us/specific-variables/)
4546

@@ -52,15 +53,15 @@ environment variable; this can be used to override the default path to something
5253
## Serving custom public files
5354

5455
To make Gitea serve custom public files (like pages and images), use the folder
55-
`custom/public/` as the webroot. Symbolic links will be followed.
56+
`$GITEA_CUSTOM/public/` as the webroot. Symbolic links will be followed.
5657

57-
For example, a file `image.png` stored in `custom/public/`, can be accessed with
58+
For example, a file `image.png` stored in `$GITEA_CUSTOM/public/`, can be accessed with
5859
the url `http://gitea.domain.tld/image.png`.
5960

6061
## Changing the default logo
6162

6263
To build a custom logo replace `assets/logo.svg` and run `make generate-images`. This will update
63-
these customizable logo files which you can then place in `custom/public/img` on your server:
64+
these customizable logo files which you can then place in `$GITEA_CUSTOM/public/img` on your server:
6465

6566
- `public/img/logo.svg`
6667
- `public/img/logo.png`
@@ -72,19 +73,19 @@ these customizable logo files which you can then place in `custom/public/img` on
7273

7374
Either generate it via above method or place the png image at the following path:
7475

75-
- `custom/public/img/avatar_default.png`
76+
- `$GITEA_CUSTOM/public/img/avatar_default.png`
7677

7778
## Customizing Gitea pages and resources
7879

7980
Gitea's executable contains all the resources required to run: templates, images, style-sheets
8081
and translations. Any of them can be overridden by placing a replacement in a matching path
8182
inside the `custom` directory. For example, to replace the default `.gitignore` provided
8283
for C++ repositories, we want to replace `options/gitignore/C++`. To do this, a replacement
83-
must be placed in `custom/options/gitignore/C++` (see about the location of the `custom`
84+
must be placed in `$GITEA_CUSTOM/options/gitignore/C++` (see about the location of the `CustomPath`
8485
directory at the top of this document).
8586

8687
Every single page of Gitea can be changed. Dynamic content is generated using [go templates](https://golang.org/pkg/html/template/),
87-
which can be modified by placing replacements below the `custom/templates` directory.
88+
which can be modified by placing replacements below the `$GITEA_CUSTOM/templates` directory.
8889

8990
To obtain any embedded file (including templates), the [`gitea embedded` tool]({{< relref "doc/advanced/cmd-embedded.en-us.md" >}}) can be used. Alternatively, they can be found in the [`templates`](https://github.com/go-gitea/gitea/tree/master/templates) directory of Gitea source (Note: the example link is from the `master` branch. Make sure to use templates compatible with the release you are using).
9091

@@ -93,16 +94,16 @@ shouldn't be touched without fully understanding these components.
9394

9495
### Customizing startpage / homepage
9596

96-
Copy [`home.tmpl`](https://github.com/go-gitea/gitea/blob/master/templates/home.tmpl) for your version of Gitea from `templates` to `custom/templates`.
97+
Copy [`home.tmpl`](https://github.com/go-gitea/gitea/blob/master/templates/home.tmpl) for your version of Gitea from `templates` to `$GITEA_CUSTOM/templates`.
9798
Edit as you wish.
9899
Dont forget to restart your gitea to apply the changes.
99100

100101
### Adding links and tabs
101102

102-
If all you want is to add extra links to the top navigation bar or footer, or extra tabs to the repository view, you can put them in `extra_links.tmpl` (links added to the navbar), `extra_links_footer.tmpl` (links added to the left side of footer), and `extra_tabs.tmpl` inside your `custom/templates/custom/` directory.
103+
If all you want is to add extra links to the top navigation bar or footer, or extra tabs to the repository view, you can put them in `extra_links.tmpl` (links added to the navbar), `extra_links_footer.tmpl` (links added to the left side of footer), and `extra_tabs.tmpl` inside your `$GITEA_CUSTOM/templates/custom/` directory.
103104

104105
For instance, let's say you are in Germany and must add the famously legally-required "Impressum"/about page, listing who is responsible for the site's content:
105-
just place it under your "custom/public/" directory (for instance `custom/public/impressum.html`) and put a link to it in either `custom/templates/custom/extra_links.tmpl` or `custom/templates/custom/extra_links_footer.tmpl`.
106+
just place it under your "$GITEA_CUSTOM/public/" directory (for instance `$GITEA_CUSTOM/public/impressum.html`) and put a link to it in either `$GITEA_CUSTOM/templates/custom/extra_links.tmpl` or `$GITEA_CUSTOM/templates/custom/extra_links_footer.tmpl`.
106107

107108
To match the current style, the link should have the class name "item", and you can use `{{AppSubUrl}}` to get the base URL:
108109
`<a class="item" href="{{AppSubUrl}}/impressum.html">Impressum</a>`
@@ -116,7 +117,7 @@ The exact HTML needed to match the style of other tabs is in the file
116117

117118
### Other additions to the page
118119

119-
Apart from `extra_links.tmpl` and `extra_tabs.tmpl`, there are other useful templates you can put in your `custom/templates/custom/` directory:
120+
Apart from `extra_links.tmpl` and `extra_tabs.tmpl`, there are other useful templates you can put in your `$GITEA_CUSTOM/templates/custom/` directory:
120121

121122
- `header.tmpl`, just before the end of the `<head>` tag where you can add custom CSS files for instance.
122123
- `body_outer_pre.tmpl`, right after the start of `<body>`.
@@ -132,7 +133,7 @@ The data is encoded and sent to the PlantUML server which generates the picture.
132133
demo server at http://www.plantuml.com/plantuml, but if you (or your users) have sensitive data you
133134
can set up your own [PlantUML server](https://plantuml.com/server) instead. To set up PlantUML rendering,
134135
copy javascript files from https://gitea.com/davidsvantesson/plantuml-code-highlight and put them in your
135-
`custom/public` folder. Then add the following to `custom/footer.tmpl`:
136+
`$GITEA_CUSTOM/public` folder. Then add the following to `custom/footer.tmpl`:
136137

137138
```html
138139
{{if .RequireHighlightJS}}
@@ -201,15 +202,15 @@ You can display STL file directly in Gitea by adding:
201202

202203
to the file `templates/custom/footer.tmpl`
203204

204-
You also need to download the content of the library [Madeleine.js](https://jinjunho.github.io/Madeleine.js/) and place it under `custom/public/` folder.
205+
You also need to download the content of the library [Madeleine.js](https://jinjunho.github.io/Madeleine.js/) and place it under `$GITEA_CUSTOM/public/` folder.
205206

206207
You should end-up with a folder structucture similar to:
207208

208209
```
209-
custom/templates
210+
$GITEA_CUSTOM/templates
210211
-- custom
211212
`-- footer.tmpl
212-
custom/public
213+
$GITEA_CUSTOM/public
213214
-- Madeleine.js
214215
|-- LICENSE
215216
|-- README.md
@@ -255,19 +256,19 @@ Then restart gitea and open a STL file on your gitea instance.
255256

256257
## Customizing Gitea mails
257258

258-
The `custom/templates/mail` folder allows changing the body of every mail of Gitea.
259+
The `$GITEA_CUSTOM/templates/mail` folder allows changing the body of every mail of Gitea.
259260
Templates to override can be found in the
260261
[`templates/mail`](https://github.com/go-gitea/gitea/tree/master/templates/mail)
261262
directory of Gitea source.
262-
Override by making a copy of the file under `custom/templates/mail` using a
263+
Override by making a copy of the file under `$GITEA_CUSTOM/templates/mail` using a
263264
full path structure matching source.
264265

265266
Any statement contained inside `{{` and `}}` are Gitea's template
266267
syntax and shouldn't be touched without fully understanding these components.
267268

268269
## Adding Analytics to Gitea
269270

270-
Google Analytics, Matomo (previously Piwik), and other analytics services can be added to Gitea. To add the tracking code, refer to the `Other additions to the page` section of this document, and add the JavaScript to the `custom/templates/custom/header.tmpl` file.
271+
Google Analytics, Matomo (previously Piwik), and other analytics services can be added to Gitea. To add the tracking code, refer to the `Other additions to the page` section of this document, and add the JavaScript to the `$GITEA_CUSTOM/templates/custom/header.tmpl` file.
271272

272273
## Customizing gitignores, labels, licenses, locales, and readmes.
273274

@@ -277,21 +278,21 @@ Place custom files in corresponding sub-folder under `custom/options`.
277278

278279
### gitignores
279280

280-
To add custom .gitignore, add a file with existing [.gitignore rules](https://git-scm.com/docs/gitignore) in it to `custom/options/gitignore`
281+
To add custom .gitignore, add a file with existing [.gitignore rules](https://git-scm.com/docs/gitignore) in it to `$GITEA_CUSTOM/options/gitignore`
281282

282283
### Labels
283284

284-
To add a custom label set, add a file that follows the [label format](https://github.com/go-gitea/gitea/blob/master/options/label/Default) to `custom/options/label`
285+
To add a custom label set, add a file that follows the [label format](https://github.com/go-gitea/gitea/blob/master/options/label/Default) to `$GITEA_CUSTOM/options/label`
285286
`#hex-color label name ; label description`
286287

287288
### Licenses
288289

289-
To add a custom license, add a file with the license text to `custom/options/license`
290+
To add a custom license, add a file with the license text to `$GITEA_CUSTOM/options/license`
290291

291292
### Locales
292293

293-
Locales are managed via our [crowdin](https://crowdin.com/project/gitea).
294-
You can override a locale by placing an altered locale file in `custom/options/locale`.
294+
Locales are managed via our [crowdin](https://crowdin.com/project/gitea).
295+
You can override a locale by placing an altered locale file in `$GITEA_CUSTOM/options/locale`.
295296
Gitea's default locale files can be found in the [`options/locale`](https://github.com/go-gitea/gitea/tree/master/options/locale) source folder and these should be used as examples for your changes.
296297

297298
To add a completely new locale, as well as placing the file in the above location, you will need to add the new lang and name to the `[i18n]` section in your `app.ini`. Keep in mind that Gitea will use those settings as **overrides**, so if you want to keep the other languages as well you will need to copy/paste the default values and add your own to them.
@@ -306,9 +307,9 @@ Locales may change between versions, so keeping track of your customized locales
306307

307308
### Readmes
308309

309-
To add a custom Readme, add a markdown formatted file (without an `.md` extension) to `custom/options/readme`
310+
To add a custom Readme, add a markdown formatted file (without an `.md` extension) to `$GITEA_CUSTOM/options/readme`
310311

311-
**NOTE:** readme templates support **variable expansion**.
312+
**NOTE:** readme templates support **variable expansion**.
312313
currently there are `{Name}` (name of repository), `{Description}`, `{CloneURL.SSH}`, `{CloneURL.HTTPS}` and `{OwnerName}`
313314

314315
### Reactions
@@ -324,7 +325,7 @@ A full list of supported emoji's is at [emoji list](https://gitea.com/gitea/gite
324325

325326
## Customizing the look of Gitea
326327

327-
As of version 1.6.0 Gitea has built-in themes. The two built-in themes are, the default theme `gitea`, and a dark theme `arc-green`. To change the look of your Gitea install change the value of `DEFAULT_THEME` in the [ui](https://docs.gitea.io/en-us/config-cheat-sheet/#ui-ui) section of `app.ini` to another one of the available options.
328+
As of version 1.6.0 Gitea has built-in themes. The two built-in themes are, the default theme `gitea`, and a dark theme `arc-green`. To change the look of your Gitea install change the value of `DEFAULT_THEME` in the [ui](https://docs.gitea.io/en-us/config-cheat-sheet/#ui-ui) section of `app.ini` to another one of the available options.
328329
As of version 1.8.0 Gitea also has per-user themes. The list of themes a user can choose from can be configured with the `THEMES` value in the [ui](https://docs.gitea.io/en-us/config-cheat-sheet/#ui-ui) section of `app.ini` (defaults to `gitea` and `arc-green`, light and dark respectively)
329330

330331
## Customizing fonts

docs/content/doc/installation/with-docker.en-us.md

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -345,19 +345,23 @@ ports:
345345
- "127.0.0.1:2222:22"
346346
```
347347

348-
In addition, `/home/git/.ssh/authorized_keys` on the host needs to be modified. It needs to act in the same way as `authorized_keys` within the Gitea container. Therefore add
348+
In addition, `/home/git/.ssh/authorized_keys` on the host needs to be modified. It needs to act in the same way as `authorized_keys` within the Gitea container. Therefore add the public key of the key you created above ("Gitea Host Key") to `~/git/.ssh/authorized_keys`.
349+
This can be done via `echo "$(cat /home/git/.ssh/id_rsa.pub)" >> /home/git/.ssh/authorized_keys`.
350+
Important: The pubkey from the `git` user needs to be added "as is" while all other pubkeys added via the Gitea web interface will be prefixed with `command="/app [...]`.
349351

350-
```bash
351-
command="/app/gitea/gitea --config=/data/gitea/conf/app.ini serv key-1",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa <YOUR_SSH_PUBKEY>
352-
```
352+
The file should then look somewhat like
353353

354-
and replace `<YOUR_SSH_PUBKEY>` with a valid SSH public key of yours.
354+
```bash
355+
# SSH pubkey from git user
356+
ssh-rsa <Gitea Host Key>
355357

356-
In addition the public key of the `git` user on the host needs to be added to `/home/git/.ssh/authorized_keys` so authentication against the container can succeed: `echo "$(cat /home/git/.ssh/id_rsa.pub)" >> /home/git/.ssh/authorized_keys`.
358+
# other keys from users
359+
command="/app/gitea/gitea --config=/data/gitea/conf/app.ini serv key-1",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty <user pubkey>
360+
```
357361

358362
Here is a detailed explanation what is happening when a SSH request is made:
359363

360-
1. A SSH request is made against the host using the `git` user, e.g. `git clone git@domain:user/repo.git`.
364+
1. A SSH request is made against the host (usually port 22) using the `git` user, e.g. `git clone git@domain:user/repo.git`.
361365
2. In `/home/git/.ssh/authorized_keys` , the command executes the `/app/gitea/gitea` script.
362366
3. `/app/gitea/gitea` forwards the SSH request to port 2222 which is mapped to the SSH port (22) of the container.
363367
4. Due to the existence of the public key of the `git` user in `/home/git/.ssh/authorized_keys` the authentication host → container succeeds and the SSH request get forwarded to Gitea running in the docker container.

docs/content/doc/usage/backup-and-restore.en-us.md

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -72,15 +72,21 @@ involves moving files to their correct locations and restoring a database dump.
7272
Example:
7373

7474
```sh
75-
apt-get install gitea
76-
unzip gitea-dump-1482906742.zip
77-
cd gitea-dump-1482906742
78-
mv custom/conf/app.ini /etc/gitea/conf/app.ini # or mv app.ini /etc/gitea/conf/app.ini
79-
unzip gitea-repo.zip
80-
mv gitea-repo/* /var/lib/gitea/repositories/
81-
chown -R gitea:gitea /etc/gitea/conf/app.ini /var/lib/gitea/repositories/
75+
unzip gitea-dump-1610949662.zip
76+
cd gitea-dump-1610949662
77+
mv data/conf/app.ini /etc/gitea/conf/app.ini
78+
mv data/* /var/lib/gitea/data/
79+
mv log/* /var/lib/gitea/log/
80+
mv repos/* /var/lib/gitea/repositories/
81+
chown -R gitea:gitea /etc/gitea/conf/app.ini /var/lib/gitea
82+
83+
# mysql
8284
mysql --default-character-set=utf8mb4 -u$USER -p$PASS $DATABASE <gitea-db.sql
83-
# or sqlite3 $DATABASE_PATH <gitea-db.sql
85+
# sqlite3
86+
sqlite3 $DATABASE_PATH <gitea-db.sql
87+
# postgres
88+
psql -U $USER -d $DATABASE < gitea-db.sql
89+
8490
service gitea restart
8591
```
8692

0 commit comments

Comments
 (0)