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

# Copyright 2020 The Distro Tracker Developers 

# See the COPYRIGHT file at the top-level directory of this distribution and 

# at https://deb.li/DTAuthors 

# 

# This file is part of Distro Tracker. It is subject to the license terms 

# in the LICENSE file found in the top-level directory of this 

# distribution and at https://deb.li/DTLicense. No part of Distro Tracker, 

# including this file, may be copied, modified, propagated, or distributed 

# except according to the terms contained in the LICENSE file. 

""" 

Utilities for generating URLs of various kinds 

""" 

 

from django.utils.http import urlencode 

 

 

def RepologyUrl(target_page, repo, package): 

"""Build a repology.org URL""" 

query = urlencode({ 

'name_type': 'srcname', 

'noautoresolve': 'on', 

'repo': repo, 

'target_page': target_page, 

'name': package, 

}) 

return 'https://repology.org/tools/project-by?' + query 

 

 

def RepologyVersionsUrl(repo, package): 

"""Build a repology.org URL for the project_versions page""" 

return RepologyUrl('project_versions', repo, package) 

 

 

def RepologyPackagesUrl(repo, package): 

"""Build a repology.org URL for the project_packages page""" 

return RepologyUrl('project_packages', repo, package)