-
Notifications
You must be signed in to change notification settings - Fork 11
/
defaults.ini
573 lines (499 loc) · 16.7 KB
/
defaults.ini
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
# Default configuration for Endless image builds
[build]
# The build section is primarily populated by the image builder based on
# the parameters it is run with. Commented options are here for
# reference with their defaults and should not be changed in the
# configuration.
# The primary image variant properties.
#product =
#branch =
#arch =
#platform =
#personality =
# Build modes
#dry_run = false
# Whether the production ostree repo should be used
#use_production_ostree = false
# The Endless major release series. For master this is master, but for
# stable branches like eos3.9 this would be eos3.
#series =
# Generated attributes
#build_version =
# Paths managed by the builder
#srcdir = /path/to/eos-image-builder
#cachedir = /var/cache/eos-image-builder
#sysconfdir = /etc/eos-image-builder
# Local settings paths corresponding to the --localdir option. These will
# not be set if no directory is provided.
#localdir =
#localdatadir = ${localdir}/data
# Various paths and settings
datadir = ${srcdir}/data
helpersdir = ${srcdir}/helpers
tmpdir = ${cachedir}/tmp
contentdir = ${cachedir}/content
outdir = ${tmpdir}/out
outversion = ${product}-${branch}-${arch}-${platform}.${build_version}.${personality}
tmpconfig = ${tmpdir}/config.ini
tmpfullconfig = ${tmpdir}/fullconfig.ini
baselib = ${srcdir}/lib/eib.sh
ssh_options = -i ${sysconfdir}/ssh-key.pem -o StrictHostKeyChecking=no
manifestdir = ${tmpdir}/manifest
[buildroot]
# Directories to mount in the buildroot
mounts_add =
# Packages to install in the buildroot
packages_add =
attr
awscli
ca-certificates
coreutils
cpio
curl
dbus-user-session
dpkg-dev
endless-ca-cert
eos-keyring
eos-tech-support
fdisk
flatpak
gir1.2-flatpak-1.0
gir1.2-glib-2.0
gir1.2-ostree-1.0
git
gnupg
json-glib-tools
jq
libfsapfs-utils
mount
openssh-client
ostree
p7zip-full
parted
pigz
python3
python3-apt
python3-dev
python3-gi
python3-requests
python3-venv
qemu-utils
rsync
udev
util-linux
unzip
wget
xz-utils
# Apt archive cache directory
aptcache_dir = ${build:contentdir}/archives
# Apt archive cache maximum size in bytes (default 2 GB)
aptcache_max_size = 2147483648
[content]
# Merged customization hooks to run.
hooks_add =
50-flatpak
50-gnome-software-cache
[image]
# Merged customization hooks to run.
hooks_add =
50-branding-background
50-branding-fbe
50-flatpak.chroot
50-language
50-locales
50-metrics-urls
50-timezone
50-update-done-stamp
50-reclaim-swap-stamp
50-gnome-software-cache
50-eos-dir-mode-700
50-xkb-layout.chroot
53-ek-content-preload
60-dconf-prepare
60-flatpak-autoinstall-counters.chroot
60-kolibri-content
61-dconf-compile.chroot
62-kolibri-automatic-provision
62-kolibri-options
63-icon-grid
63-kolibri-chown.chroot
70-flatpak-appstream-catalog
70-flatpak-manifest
70-ostree-manifest
70-packages-manifest
80-ldconfig-aux-cache.chroot
# Gzip compression by default (valid choices: gz or xz)
compression = gz
# Whether the root filesystem should be resized on first boot or not
rootfs_resize = true
# Create boot.zip by default
boot_zip = true
# Don't build ISOs by default
iso = false
# Don't build OVF VM images by default
# This setting only works for arch=amd64, for all other values this is a no-op
# (please also add the comment above to anywhere 'vm_image' is changed)
vm_image = false
# Don't build QEMU qcow2 images by default
qcow2 = false
# GPG private key ID for signing images. If this is left blank, detached
# signatures will not be created.
signing_keyid =
# Image uploading
upload_api_host =
upload_api_url_root = http://${upload_api_host}
user = uploader
path = /srv/images/www
destdir = ${path}/${publish:path}
# Image downloading
download_host = images-dl.endlessm.com
download_url_root = http://${download_host}
download_url = ${download_url_root}/${publish:path}
# Add preloaded content in /var/lib/kalite
# The variant consists mainly between 2 alternatives: endless and resized:
# the 'endless' variant is the previous content that was shipped in the
# images, and 'resized' is all the content available on that specific language
# with reduced quality.
kalite_content = false
kalite_content_host = s3://ka-lite.endlessm.com
kalite_content_user = uploader
kalite_content_variant = endless
kalite_content_version = 0.16
# Product name for ISO labels, etc
product_name = Endless OS
# Default language (locale)
language =
# Default Keyboard Layout
xkb_layout =
xkb_variant =
# Default timezone
timezone =
# dconf overrides. Each of the elements of this list should be a keyfile in the
# format explained at https://wiki.gnome.org/Projects/dconf/SystemAdministrators
settings_add =
# dconf keys to lock
settings_locks_add =
# Hostname, to be used from the IMAGE hook 50-hostname.
# It might override values set by the OSTree builder.
hostname =
# Chromium policies override files
chromium_policies = false
chromium_policies_managed =
chromium_policies_recommended =
# Default partition table
partition_table = gpt
# Desktop icon grid overrides
icon_grid_add =
# Brand-specific configuration for the First Boot Experience
branding_fbe_config =
# Metrics server URLs. metrics_server_url sets the URL for the OS
# metrics server (azafea-metrics-proxy) while activation_server_url sets
# the URL for the activation server (eos-activation-server).
metrics_server_url =
activation_server_url =
[kolibri]
app_version = 0.15.12
app_desktop_xdg_plugin_version = 1.2.0
desktop_auth_plugin_version = 0.0.7
automatic_provision = false
automatic_provision_facility_name = Endless
automatic_provision_superuser_name =
automatic_provision_superuser_password =
automatic_provision_preset = nonformal
automatic_provision_landing_page = learn
automatic_provision_learner_can_edit_username = false
automatic_provision_learner_can_edit_name = false
automatic_provision_learner_can_edit_password = false
automatic_provision_learner_can_sign_up = false
automatic_provision_allow_guest_access = false
# By default, kolibri uses https://studio.learningequality.org as the
# base content URL. This can be used to import channels from a custom
# Kolibri server. If cleared, the upstream default will be used.
#
# If API credentials are provided in netrc authentication, the builder
# will ask the server to import any channels listed in install_channels
# below.
central_content_base_url =
regular_users_can_manage_content = false
# Preloaded Kolibri channels
#
# Note: this content on this channel is outdated, so we are leaving
# it out of the images until it gets updated to match the new Kolibri
# experience on Endless OS.
#
# install_channels =
# # How to get started with Kolibri on Endless OS
# e8a879742b2249a0a4b890f9903916f7
# Kolibri content configuration
#
# Each kolibri-<channel> section corresponds to a channel listed in the
# install_channels option in the kolibri section. These sections are
# optional. By default, all content from a channel will be included.
#
# include_node_ids - List of content node IDs to include. If this is not set,
# all content from the channel will be included.
# exclude_node_ids - A list of content node IDs to exclude. Use this to
# exclude content nested beneath content nodes that are being included.
#
# Example:
#
# [kolibri-e8a879742b2249a0a4b890f9903916f7]
# include_node_ids =
# # English [topic]
# 3b909a18242c48208dbc49d06bc48162
# # Español [topic]
# 6e8f60c6b9c841969853d48f4eff22cf
# # Français [topic]
# 0b70a374af244baaa2b795530c2c0b55
# exclude_node_ids =
# # Kolibri 0.12.2 User Guide for Admins [document]
# 5bb37c1832c8489ab2940f31588305f6
[endlesskey]
# Kolibri package specification to use when preloading data. This needs to be
# less than or equal to the version in the org.endlessos.Key flatpak to ensure
# it doesn't apply any database migrations that the app doesn't have yet.
# Typically this will be kolibri==<version>, but may also be a URL for a
# pre-release not on PyPI.
kolibri_pkgspec = https://github.com/learningequality/kolibri/releases/download/v0.16.0-beta6/kolibri-0.16.0b6-py2.py3-none-any.whl
# Which Endless Key collections to preload in the image.
# Must match the name of one of the collections shipped with the Endless Key
# (ex. artist, explorer, spanish etc).
collections =
# By default, only the content specified in each collection will be included.
# Set this to true to include all content from all channels in the requested
# collections.
include_full_channels = false
[ostree]
# Repository setup. By default the remote, remote repo and OS name are
# all named eos.
product = ${build:product}
platform = ${build:platform}
branch = ${build:branch}
ref = os/${product}/${platform}/${branch}
repo = eos
os = eos
remote = eos
# By default the deployed ostree configuration should follow the latestX
# branch rather than the branch used for the build. This way they'll
# always follow our latest release.
#
# For LTS builds this may be the built branch (e.g., eos4.0) or the
# major series branch (e.g., eos4) to keep the system on a specific EOS
# version.
stable_branch = latest3
ref_deploy = os/${product}/${platform}/${stable_branch}
# Builder directories
repodir = ${build:contentdir}/ostree/${repo}
checkout = ${build:tmpdir}/ostree-co
# OSTree server base URL. Separate pull and deploy URLs in case there's
# a more preferred source for the build. This is primarily for Endless
# usage where our builders are in the same datacenter as the OSTree
# server and can benefit from a direct route. By default these are the
# same.
deploy_server_url = https://ostree.endlessm.com
pull_server_url = ${deploy_server_url}
# Production OSTree repos
prod_repo_path = /ostree
prod_deploy_repo_url = ${deploy_server_url}${prod_repo_path}
prod_pull_repo_url = ${pull_server_url}${prod_repo_path}
# Development OSTree repos
dev_repo_path = /staging/dev
dev_deploy_repo_url = ${deploy_server_url}${dev_repo_path}
dev_pull_repo_url = ${pull_server_url}${dev_repo_path}
# The ostree OS remote URL that the final system will query for updates.
# Note that this points to the production repos by default so that
# images are ready for release with the correct remote URL. This is not
# used during builds.
deploy_url = ${prod_deploy_repo_url}/${repo}
# The ostree OS remote URL that's used for pulling the OS during the
# build. For production ostree builds, the prod repo path is used, so 2
# URLs are defined and selected during the build in eib_ostree.
prod_pull_url = ${prod_pull_repo_url}/${repo}
dev_pull_url = ${dev_pull_repo_url}/${repo}
# Enable P2P OS updates
enable_p2p_updates = true
[manifest]
# Merged customization hooks to run.
hooks_add =
[publish]
# Merged customization hooks to run.
hooks_add =
40-build-log
42-sha256sums
45-publish-s3
50-publish
# Remote path to publish output directory to
path = nightly/${build:product}-${build:arch}-${build:platform}/${build:branch}/${build:personality}/${build:build_version}
# AWS S3 bucket to publish images to
s3_bucket =
s3_region =
[error]
# Merged customization hooks to run.
hooks_add =
[jenkins]
# Jenkins triggering
enable = false
url = https://ci.endlessm-sf.com
user =
token =
[flatpak]
# Switch to allow disabling flatpak on some products
enable = true
# Flatpak architecture. This is different from debian style arch used
# for the build. E.g, the build uses amd64 while flatpak uses x86_64.
# Normally this is not required as the default flatpak architecture will
# be correct.
arch =
# Locales to use when pulling runtimes
locales_add = ar be bn en es fr hu id ko pt ro ru sr uk zh
locales_del =
# Opt-in to set previously values on locales_add as the
# xa.extra-languages key on the flatpak [core] file. These values
# can be either languages (eg. en, pt), or full locales
# (eg. en_GB, az_AZ@latin, uz_UZ.utf8@cyrillic)
set_extra_languages = false
# Enable P2P app updates
enable_p2p_updates = true
# Flatpak installation configuration
#
# Each flatpak-remote-<name> section corresponds to a Flatpak remote.
# The string used for <name> becomes the remote name. The following
# options are supported:
#
# url - The remote URL to install flatpaks from
# enable (optional) - Boolean controlling whether the remote should be
# used. Defaults to true when not specified.
# deploy_url (optional) - The URL to change the remote to for
# deployment. Primarily this is for Endless repos where we want to
# install from a dev repo but configure the image to pull from the
# prod repo.
# apps - List of Flatpak apps required for installation.
# runtimes - List of Flatpak runtimes required for installation.
# exclude - List of Flatpak names to exclude from images.
# allow_extra_data - List of Flatpak names with extra data to allow in images.
# title (optional) - A title for the remote.
# default_branch (optional) - The default branch to use for installs.
# This affects installs during the image build as well as at runtime.
# Flatpaks that do not specify a branch will use this by default.
# prio (optional) - The priority for the remote. (See xa.prio).
# noenumerate (optional) - Whether this remote should be used when searching
# for available apps or runtimes. (See xa.noenumerate).
#
# Additionally, a URL or path for a flatpakrepo file can be specified in
# the repo_file option. The Url, Title, DefaultBranch and GPGKey keys
# are supported within that file. See flatpak-flatpakrepo(5) for
# details. This is also the only way that a remote-specific GPG key (not
# needed for Endless repos) can be specified. Note that the above config
# options take precedence over associated keys in the flatpakrepo file.
#
# The apps and runtimes options are all merged, so they support the
# typical _add_/_del_ scheme.
[flatpak-remote-eos-apps]
url = ${ostree:prod_pull_repo_url}/eos-apps
deploy_url = ${ostree:prod_deploy_repo_url}/eos-apps
# The latest Endless apps are currently published to the eos3 branch.
default_branch = eos3
apps_add =
com.endlessm.finance
com.endlessm.resume
[flatpak-remote-eos-runtimes]
url = ${ostree:prod_pull_repo_url}/eos-runtimes
deploy_url = ${ostree:prod_deploy_repo_url}/eos-runtimes
[flatpak-remote-eos-sdk]
url = ${ostree:prod_pull_repo_url}/eos-sdk
deploy_url = ${ostree:prod_deploy_repo_url}/eos-sdk
default_branch = stable
apps_add_mandatory =
com.endlessm.EknServicesMultiplexer
[flatpak-remote-flathub]
repo_file = https://dl.flathub.org/repo/flathub.flatpakrepo
apps_add_mandatory =
org.chromium.Chromium
org.gnome.Calculator
org.gnome.Contacts
org.gnome.Decibels
org.gnome.Epiphany
org.gnome.Loupe
org.gnome.Totem
org.gnome.Shotwell
org.gnome.font-viewer
org.gnome.TextEditor
org.libreoffice.LibreOffice
apps_add =
cc.arduino.IDE2
com.endlessm.photos
com.endlessnetwork.aqueducts
com.endlessnetwork.dragonsapprentice
com.endlessnetwork.fablemaker
com.endlessnetwork.frogsquash
com.endlessnetwork.MidnightmareTeddy
com.endlessnetwork.missilemath
com.endlessnetwork.passage
com.endlessnetwork.tankwarriors
com.endlessnetwork.whitehouse
com.orama_interactive.Pixelorama
com.tux4kids.tuxmath
com.tux4kids.tuxtype
edu.mit.Scratch
io.gdevelop.ide
io.lmms.LMMS
io.thp.numptyphysics
org.audacityteam.Audacity
org.blender.Blender
org.endlessos.Key
org.gimp.GIMP
org.gnome.Cheese
org.gnome.Gnote
org.gnome.Music
org.gnome.Weather
org.godotengine.Godot
org.inkscape.Inkscape
org.kde.gcompris
org.laptop.TurtleArtActivity
org.pitivi.Pitivi
org.tuxpaint.Tuxpaint
# Convenience variable primarily for other configurations to add or
# delete runtimes from the default set
runtimes_add =
# List of IDs (apps, runtimes or extensions) to never install
exclude_add =
com.github.JannikHv.Gydl
com.github.needleandthread.vocal
com.obsproject.Studio
com.spotify.Client
com.uploadedlobster.peek
com.vinszent.GnomeTwitch
de.haeckerfelix.gradio
io.atom.Atom
io.github.GnomeMpv
io.github.jliljebl.Flowblade
net.mediaarea.QCTools
org.audacityteam.Audacity.Codecs
org.blender.Blender.Codecs
org.freedesktop.Platform.ffmpeg
org.freedesktop.Platform.ffmpeg-full
org.freedesktop.Platform.ffmpeg_full.i386
org.freedesktop.Platform.html5-codecs
org.gnome.Totem.Codecs
org.kde.kdenlive
org.kde.krita
org.pitivi.Pitivi.Codecs
org.telegram.desktop
org.tordini.flavio.Minitube
org.videolan.VLC
# List of IDs with extra data (apps, runtimes or extensions) to allow
allow_extra_data_add =
# We are allowed to distribute up to 100,000 H.264 decoders per year,
# so we only want to install the Cisco OpenH264 extension for specific
# configurations. Those configurations need to explicitly remove
# org.freedesktop.Platform.openh264 from the exclude list.
#
# https://phabricator.endlessm.com/T27888
org.freedesktop.Platform.openh264
[flatpak-remote-flathub-beta]
# Flathub Beta repo, disabled by default
repo_file = https://dl.flathub.org/beta-repo/flathub-beta.flatpakrepo
enable = false
default_branch = beta
prio = 0
noenumerate = true