chiark / gitweb /
Merge branch 'changelog' of https://gitlab.com/krt/fdroidserver
[fdroidserver.git] / examples / config.py
1 #!/usr/bin/env python2
2
3 # Copy this file to config.py, then amend the settings below according to
4 # your system configuration.
5
6 # Path to the Android SDK
7 sdk_path = "$ANDROID_HOME"
8
9 # Path to various versions of the Android NDK
10 # Most users will have the latest at $ANDROID_NDK, which is used by default
11 # If a version is missing or assigned to None, it is assumed not installed
12 ndk_paths = {
13     'r9b': None,
14     'r10d': "$ANDROID_NDK"
15 }
16
17 # Build tools version to be used
18 build_tools = "22.0.0"
19
20 # Command or path to binary for running Ant
21 ant = "ant"
22
23 # Command or path to binary for running maven 3
24 mvn3 = "mvn"
25
26 # Command or path to binary for running Gradle
27 gradle = "gradle"
28
29 # Set the maximum age (in days) of an index that a client should accept from
30 # this repo. Setting it to 0 or not setting it at all disables this
31 # functionality. If you do set this to a non-zero value, you need to ensure
32 # that your index is updated much more frequently than the specified interval.
33 # The same policy is applied to the archive repo, if there is one.
34 repo_maxage = 0
35
36 repo_url = "https://MyFirstFDroidRepo.org/fdroid/repo"
37 repo_name = "My First FDroid Repo Demo"
38 repo_icon = "fdroid-icon.png"
39 repo_description = """
40 This is a repository of apps to be used with FDroid. Applications in this
41 repository are either official binaries built by the original application
42 developers, or are binaries built from source by the admin of f-droid.org
43 using the tools on https://gitlab.com/u/fdroid.
44 """
45
46 # As above, but for the archive repo.
47 # archive_older sets the number of versions kept in the main repo, with all
48 # older ones going to the archive. Set it to 0, and there will be no archive
49 # repository, and no need to define the other archive_ values.
50 archive_older = 3
51 archive_url = "https://f-droid.org/archive"
52 archive_name = "My First FDroid Archive Demo"
53 archive_icon = "fdroid-icon.png"
54 archive_description = """
55 The repository of older versions of applications from the main demo repository.
56 """
57
58 # `fdroid update` will create a link to the current version of a given app.
59 # This provides a static path to the current APK.  To disable the creation of
60 # this link, uncomment this:
61 # make_current_version_link = False
62
63 # By default, the "current version" link will be based on the "Name" of the
64 # app from the metadata.  You can change it to use a different field from the
65 # metadata here:
66 # current_version_name_source = 'id'
67
68 # Optionally, override home directory for gpg
69 # gpghome = /home/fdroid/somewhere/else/.gnupg
70
71 # The ID of a GPG key for making detached signatures for apks. Optional.
72 # gpgkey = '1DBA2E89'
73
74 # The key (from the keystore defined below) to be used for signing the
75 # repository itself.  This is the same name you would give to keytool or
76 # jarsigner using -alias.  (Not needed in an unsigned repository).
77 # repo_keyalias = "fdroidrepo"
78
79 # Optionally, the public key for the key defined by repo_keyalias above can
80 # be specified here. There is no need to do this, as the public key can and
81 # will be retrieved from the keystore when needed. However, specifying it
82 # manually can allow some processing to take place without access to the
83 # keystore.
84 # repo_pubkey = "..."
85
86 # The keystore to use for release keys when building. This needs to be
87 # somewhere safe and secure, and backed up!  The best way to manage these
88 # sensitive keys is to use a "smartcard" (aka Hardware Security Module). To
89 # configure FDroid to use a smartcard, set the keystore file using the keyword
90 # "NONE" (i.e. keystore = "NONE").  That makes Java find the keystore on the
91 # smartcard based on 'smartcardoptions' below.
92 # keystore = "~/.local/share/fdroidserver/keystore.jks"
93
94 # You should not need to change these at all, unless you have a very
95 # customized setup for using smartcards in Java with keytool/jarsigner
96 # smartcardoptions = "-storetype PKCS11 -providerName SunPKCS11-OpenSC \
97 #    -providerClass sun.security.pkcs11.SunPKCS11 \
98 #    -providerArg opensc-fdroid.cfg"
99
100 # The password for the keystore (at least 6 characters).  If this password is
101 # different than the keypass below, it can be OK to store the password in this
102 # file for real use.  But in general, sensitive passwords should not be stored
103 # in text files!
104 # keystorepass = "password1"
105
106 # The password for keys - the same is used for each auto-generated key as well
107 # as for the repository key.  You should not normally store this password in a
108 # file since it is a sensitive password.
109 # keypass = "password2"
110
111 # The distinguished name used for all keys.
112 keydname = "CN=Birdman, OU=Cell, O=Alcatraz, L=Alcatraz, S=California, C=US"
113
114 # Use this to override the auto-generated key aliases with specific ones
115 # for particular applications. Normally, just leave it empty.
116 keyaliases = {}
117 keyaliases['com.example.app'] = 'example'
118 # You can also force an app to use the same key alias as another one, using
119 # the @ prefix.
120 keyaliases['com.example.another.plugin'] = '@com.example.another'
121
122
123 # The full path to the root of the repository.  It must be specified in
124 # rsync/ssh format for a remote host/path. This is used for syncing a locally
125 # generated repo to the server that is it hosted on.  It must end in the
126 # standard public repo name of "/fdroid", but can be in up to three levels of
127 # sub-directories (i.e. /var/www/packagerepos/fdroid).  You can include
128 # multiple servers to sync to by wrapping the whole thing in {} or [], and
129 # including the serverwebroot strings in a comma-separated list.
130 #
131 # serverwebroot = 'user@example:/var/www/fdroid'
132 # serverwebroot = {
133 #     'foo.com:/usr/share/nginx/www/fdroid',
134 #     'bar.info:/var/www/fdroid',
135 #     }
136
137
138 # optionally specific which identity file to use when using rsync over SSH
139 #
140 # identity_file = '~/.ssh/fdroid_id_rsa'
141
142
143 # If you are running the repo signing process on a completely offline machine,
144 # which provides the best security, then you can specify a folder to sync the
145 # repo to when running `fdroid server update`.  This is most likely going to
146 # be a USB thumb drive, SD Card, or some other kind of removable media.  Make
147 # sure it is mounted before running `fdroid server update`.  Using the
148 # standard folder called 'fdroid' as the specified folder is recommended, like
149 # with serverwebroot.
150 #
151 # local_copy_dir = '/media/MyUSBThumbDrive/fdroid'
152
153
154 # If you are using local_copy_dir on an offline build/signing server, once the
155 # thumb drive has been plugged into the online machine, it will need to be
156 # synced to the copy on the online machine.  To make that happen
157 # automatically, set sync_from_local_copy_dir to True:
158 #
159 # sync_from_local_copy_dir = True
160
161
162 # To upload the repo to an Amazon S3 bucket using `fdroid server update`.
163 # Warning, this deletes and recreates the whole fdroid/ directory each
164 # time. This is based on apache-libcloud, which supports basically all cloud
165 # storage services, so it should be easy to port the fdroid server tools to
166 # any of them.
167 #
168 # awsbucket = 'myawsfdroid'
169 # awsaccesskeyid = 'SEE0CHAITHEIMAUR2USA'
170 # awssecretkey = 'yourverysecretkeywordpassphraserighthere'
171
172
173 # If you want to force 'fdroid server' to use a non-standard serverwebroot
174 #
175 # nonstandardwebroot = False
176
177
178 # Wiki details
179 wiki_protocol = "http"
180 wiki_server = "server"
181 wiki_path = "/wiki/"
182 wiki_user = "login"
183 wiki_password = "1234"
184
185 # Only set this to true when running a repository where you want to generate
186 # stats, and only then on the master build servers, not a development
187 # machine.
188 update_stats = False
189
190 # When used with stats, this is a list of IP addresses that are ignored for
191 # calculation purposes.
192 stats_ignore = []
193
194 # Server stats logs are retrieved from. Required when update_stats is True.
195 stats_server = "example.com"
196
197 # User stats logs are retrieved from. Required when update_stats is True.
198 stats_user = "bob"
199
200 # Use the following to push stats to a Carbon instance:
201 stats_to_carbon = False
202 carbon_host = '0.0.0.0'
203 carbon_port = 2003
204
205 # Set this to true to always use a build server. This saves specifying the
206 # --server option on dedicated secure build server hosts.
207 build_server_always = False
208
209 # Limit in number of characters that fields can take up
210 # Only the fields listed here are supported, defaults shown
211 char_limits = {
212     'Summary': 50,
213     'Description': 1500
214 }