Issue title: `fetchFromGitLab` uses an URL endpoint, which is broken at the moment for gitlab.com
 Issue body: ## Issue description
`fetchFromGitLab` uses

url = "https://gitlab.com/${owner}/${repo}/repository/archive.tar.gz?ref=${rev}";

which always downloads tip of default branch at the moment. According to
gitlab.com documentation `sha` should be used as url parameter instead
of `ref` but that doesn't work either.

### Steps to reproduce

`wget https://gitlab.com/procps-ng/procps/repository/archive.tar.gz?ref=v3.3.13`
and look at the NEWS file in the archive, it mentions v3.3.14.

Change one digit in the hash for procps-ng in nixpkgs, to make nix-build redownload
the source and watch the hash change completely.

## Technical details

It is not really i nixpkgs issue, but we need to work around here. The URL
`url = "https://gitlab.com/${owner}/${repo}/-/archive/${rev}/${repo}-${rev}.tar.gz"`
works correctly, but isn't documented. I will make a pr to use that url instead.

https://gitlab.com/gitlab-org/gitlab-ce/issues/38830#note_68374704

suggests it will become the official url for fetching archives from gitlab.com.
 Comments: 
 Comment 0: see #39154 
 Comment 1: New information in https://gitlab.com/gitlab-org/gitlab-ce/issues/45586#note_69828451 so the archive url with "official" long term stability would be: `https://gitlab.com/api/v4/projects/procps-ng%2Fprocps/repository/archive?sha=v3.3.13`. Beware in the original gitlab.com issue, there is a typo in the project name.

Should we jump ahead and change the URL again, to use the official long term stable url?
 Comment 2: yes
{'source': 'GithubIssues', 'repo_name_with_owner': 'NixOS/nixpkgs', 'issue_id': 316166910, 'repo_stars': 11154.0}