chiark / gitweb /
4ad5a32336c659175b7bc5c8566a28b420579480
[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 # The ID of a GPG key for making detached signatures for apks. Optional.
69 # gpgkey = '1DBA2E89'
70
71 # The key (from the keystore defined below) to be used for signing the
72 # repository itself.  This is the same name you would give to keytool or
73 # jarsigner using -alias.  (Not needed in an unsigned repository).
74 # repo_keyalias = "fdroidrepo"
75
76 # Optionally, the public key for the key defined by repo_keyalias above can
77 # be specified here. There is no need to do this, as the public key can and
78 # will be retrieved from the keystore when needed. However, specifying it
79 # manually can allow some processing to take place without access to the
80 # keystore.
81 # repo_pubkey = "..."
82
83 # The keystore to use for release keys when building. This needs to be
84 # somewhere safe and secure, and backed up!  The best way to manage these
85 # sensitive keys is to use a "smartcard" (aka Hardware Security Module). To
86 # configure FDroid to use a smartcard, set the keystore file using the keyword
87 # "NONE" (i.e. keystore = "NONE").  That makes Java find the keystore on the
88 # smartcard based on 'smartcardoptions' below.
89 # keystore = "~/.local/share/fdroidserver/keystore.jks"
90
91 # You should not need to change these at all, unless you have a very
92 # customized setup for using smartcards in Java with keytool/jarsigner
93 # smartcardoptions = "-storetype PKCS11 -providerName SunPKCS11-OpenSC \
94 #    -providerClass sun.security.pkcs11.SunPKCS11 \
95 #    -providerArg opensc-fdroid.cfg"
96
97 # The password for the keystore (at least 6 characters).  If this password is
98 # different than the keypass below, it can be OK to store the password in this
99 # file for real use.  But in general, sensitive passwords should not be stored
100 # in text files!
101 # keystorepass = "password1"
102
103 # The password for keys - the same is used for each auto-generated key as well
104 # as for the repository key.  You should not normally store this password in a
105 # file since it is a sensitive password.
106 # keypass = "password2"
107
108 # The distinguished name used for all keys.
109 keydname = "CN=Birdman, OU=Cell, O=Alcatraz, L=Alcatraz, S=California, C=US"
110
111 # Use this to override the auto-generated key aliases with specific ones
112 # for particular applications. Normally, just leave it empty.
113 keyaliases = {}
114 keyaliases['com.example.app'] = 'example'
115 # You can also force an app to use the same key alias as another one, using
116 # the @ prefix.
117 keyaliases['com.example.another.plugin'] = '@com.example.another'
118
119
120 # The full path to the root of the repository.  It must be specified in
121 # rsync/ssh format for a remote host/path. This is used for syncing a locally
122 # generated repo to the server that is it hosted on.  It must end in the
123 # standard public repo name of "/fdroid", but can be in up to three levels of
124 # sub-directories (i.e. /var/www/packagerepos/fdroid).  You can include
125 # multiple servers to sync to by wrapping the whole thing in {} or [], and
126 # including the serverwebroot strings in a comma-separated list.
127 #
128 # serverwebroot = 'user@example:/var/www/fdroid'
129 # serverwebroot = {
130 #     'foo.com:/usr/share/nginx/www/fdroid',
131 #     'bar.info:/var/www/fdroid',
132 #     }
133
134
135 # optionally specific which identity file to use when using rsync over SSH
136 #
137 # identity_file = '~/.ssh/fdroid_id_rsa'
138
139
140 # If you are running the repo signing process on a completely offline machine,
141 # which provides the best security, then you can specify a folder to sync the
142 # repo to when running `fdroid server update`.  This is most likely going to
143 # be a USB thumb drive, SD Card, or some other kind of removable media.  Make
144 # sure it is mounted before running `fdroid server update`.  Using the
145 # standard folder called 'fdroid' as the specified folder is recommended, like
146 # with serverwebroot.
147 #
148 # local_copy_dir = '/media/MyUSBThumbDrive/fdroid'
149
150
151 # If you are using local_copy_dir on an offline build/signing server, once the
152 # thumb drive has been plugged into the online machine, it will need to be
153 # synced to the copy on the online machine.  To make that happen
154 # automatically, set sync_from_local_copy_dir to True:
155 #
156 # sync_from_local_copy_dir = True
157
158
159 # To upload the repo to an Amazon S3 bucket using `fdroid server update`.
160 # Warning, this deletes and recreates the whole fdroid/ directory each
161 # time. This is based on apache-libcloud, which supports basically all cloud
162 # storage services, so it should be easy to port the fdroid server tools to
163 # any of them.
164 #
165 # awsbucket = 'myawsfdroid'
166 # awsaccesskeyid = 'SEE0CHAITHEIMAUR2USA'
167 # awssecretkey = 'yourverysecretkeywordpassphraserighthere'
168
169
170 # If you want to force 'fdroid server' to use a non-standard serverwebroot
171 #
172 # nonstandardwebroot = False
173
174
175 # Wiki details
176 wiki_protocol = "http"
177 wiki_server = "server"
178 wiki_path = "/wiki/"
179 wiki_user = "login"
180 wiki_password = "1234"
181
182 # Only set this to true when running a repository where you want to generate
183 # stats, and only then on the master build servers, not a development
184 # machine.
185 update_stats = False
186
187 # When used with stats, this is a list of IP addresses that are ignored for
188 # calculation purposes.
189 stats_ignore = []
190
191 # Server stats logs are retrieved from. Required when update_stats is True.
192 stats_server = "example.com"
193
194 # User stats logs are retrieved from. Required when update_stats is True.
195 stats_user = "bob"
196
197 # Use the following to push stats to a Carbon instance:
198 stats_to_carbon = False
199 carbon_host = '0.0.0.0'
200 carbon_port = 2003
201
202 # Set this to true to always use a build server. This saves specifying the
203 # --server option on dedicated secure build server hosts.
204 build_server_always = False
205
206 # Limit in number of characters that fields can take up
207 # Only the fields listed here are supported, defaults shown
208 char_limits = {
209     'Summary': 50,
210     'Description': 1500
211 }