211 Commits

Author SHA1 Message Date
Steve Langasek
bd0f079397 Strip translation files out of the minimal images.
This is another thing that goes unused when there is no human console user
(and we already don't have the locales themselves present on a minimal
image).

Bug-Ubuntu: https://bugs.launchpad.net/bugs/1829333
2019-05-28 08:51:06 -07:00
Robert C Jennings
620e17d2b7
ubuntu-cpc: parallel builds
* Replace "snap download" with tool that uses snap store's coherence feature

    This is important for parallel image builds to ensure all pre-seeded snaps
    have the same versions across image variants.

* Inject a proxy into the build providing a snapshot view of the package repo.

    When the REPO_SNAPSHOT_STAMP variable is set, the auto/build script will attempt
    to launch a transparent HTTP proxy on port 8080, and insert an iptables rule to
    redirect all outgoing HTTP requests to this proxy.

    The proxy, contained in the `magic-proxy` Python script, examines each request
    and silently overrides those pointing to InRelease files or files that are
    listed in InRelease files. It will instead provide the contents of the requested
    file as it was at REPO_SNAPSHOT_STAMP, by downloading the corresponding asset
    "by hash".

* Use series files with dependency handling to generate hook symlinks dynamically

    This patch currently only applies to the "ubuntu-cpc" project.

    More and more logic has been going into the hook scripts to decide
    under which conditions they should run or not. As we are moving
    to parallelized builds of image sets, this will get even more
    complicated. Base hooks will have to know which image sets they
    belong to and modification of the dependency chain between scripts
    will become more complicated and prone to errors, as the number of
    image sets grows.

    This patch introduces explicit ordering and dependency handling for
    scripts through the use of `series` files and an explicit syntax
    for dependency specification.
2019-05-21 17:32:47 -05:00
Michael Hudson-Doyle
a7b8928928 Remove device nodes later for ubuntu-base:minimized (i.e. docker) builds. (LP: #1828118) 2019-05-08 10:50:23 +12:00
Julian Andres Klode
82870b1185 Remove crufty files after minimize-manual
minimize-manual would be creating those files again, and other
parts may be creating them, so best to do the cleanup at the
very end.

LP: #1826377
2019-04-25 11:51:08 +02:00
Cody Shepherd
f661d400a1 Fix snap-seed-parse to take filename argument instead of printing to
stdout
2018-11-13 10:48:25 -08:00
Cody Shepherd
2819290352 Changed absoluted paths to relative; set changelog message to UNRELEASED 2018-10-23 10:32:52 -07:00
Cody Shepherd
5bee1ade70 Ensure pre-seeded snaps are now published in the image manifests. 2018-10-22 10:21:50 -07:00
Michael Hudson-Doyle
791d2adfd8 merge trunk 2018-09-26 12:42:42 +12:00
Adam Conrad
94230324e0 Stop building buildd chroots with --xattrs until we move to python3. 2018-09-20 02:56:56 -06:00
Colin Watson
bb652c238f Merge trunk. 2018-09-19 16:24:26 +02:00
Colin Watson
c4c5c1f349 Generate tar file with --xattrs. 2018-09-19 16:19:17 +02:00
Julian Andres Klode
1746e65953 Reorganize minimal-manual file location.
This also gets rid of the change to debian/rules
2018-09-18 11:44:06 +02:00
Julian Andres Klode
fc6907b701 fixup: Do not assume current directory 2018-09-18 09:27:27 +02:00
Julian Andres Klode
9360135b2c Minimize the number of manually installed packages in images by marking
dependencies of metapackages as automatically installed.
2018-09-18 09:01:12 +02:00
Michael Hudson-Doyle
a261471969 a less hackish approach 2018-08-17 12:00:41 +12:00
Steve Langasek
3db2340c54 generate all tar files with --xattrs. LP: #1302192. 2018-08-01 18:02:13 -07:00
Michael Hudson-Doyle
333a3e2b1b moderate comment 2018-07-18 10:11:25 +12:00
Michael Hudson-Doyle
092b316357 add a comment explaining why /dev cleaning is docker-only 2018-07-17 13:34:01 +12:00
Michael Hudson-Doyle
013dff431e Remove device nodes from Docker images. (LP: #1645468) 2018-07-17 12:02:34 +12:00
Phil Roche
b7403fabf1 Update unminimize script text and install ubuntu-standard when unminimizing a minimal image (LP: #1778777) 2018-07-04 16:48:23 +01:00
Colin Watson
1e6563aa79 Merge trunk. 2018-06-29 22:07:49 +01:00
Michael Hudson-Doyle
664ace2f30 man un-diverting man idempotent 2018-06-06 10:51:35 +12:00
Michael Hudson-Doyle
7c7c2c5b30 rm -r the lists 2018-06-06 07:36:49 +12:00
Michael Hudson-Doyle
ccef323973 go back to having docker unminimize not install any extra packages
update text of man diversion to mention need to install man-db package
2018-06-06 07:12:01 +12:00
Michael Hudson-Doyle
2fc3993d48 Remove apt lists that are currently removed downstream anyway.
(LP: #1699913)
2018-06-06 06:44:20 +12:00
Michael Hudson-Doyle
fa1bce5389 still install a few packages in docker unminimize 2018-06-05 19:58:46 +12:00
Michael Hudson-Doyle
514faae2db divert /usr/bin/man in minimized images to a script that mentions the unminimize script 2018-06-05 11:08:33 +12:00
Michael Hudson-Doyle
7e1bd33544 do not install ubuntu-minimal in ubuntu-base's unminimize 2018-06-05 11:07:06 +12:00
Colin Watson
07487675b6 Sort buildd tarballs by name and use numeric user and group IDs. 2018-04-29 21:43:46 +01:00
Colin Watson
cb22177287 Add a buildd subproject. 2018-04-27 16:07:44 +01:00
Steve Langasek
e6089e9e32 Remove landscape-common from minimal image, and handle restoring it in
unminimize script.  LP: #1763182.
2018-04-11 14:26:43 -07:00
Robert C Jennings
73dba1f31a snap preseeding: capture Ubuntu snap seeding policy in code
When no channel is given for a pre-seeded snap, the channel
should be stable/ubuntu-XX.YY to match Ubuntu policy.

This patch adds the LB_DISTRIBUTION var to config/{binary,chroot}
to have a common way of determining the Ubuntu XX.YY version
number between hooks and auto/build.
2018-04-10 11:59:19 -05:00
Robert C Jennings
57261c3edf auto/build: Install snaps using common functions 2018-04-06 13:12:53 -05:00
Steve Langasek
4bb0414a5d Make sure we call the build "minimal" within the cloud build info,
when building a minimized image.
2018-03-27 12:12:26 -07:00
Christopher Glass
51c663a892 Fixed whitespace/tabs. 2018-03-27 16:09:35 +02:00
Michael Hudson-Doyle
3cb1f38cf2 Set the default locale to C.UTF-8 in all server and cloud images.
(LP: #1751051, #1759003)
2018-03-27 09:47:12 +13:00
Christopher Glass
0b2239c069 Parametrize BUILD_NAME in /etc/cloud/build.info to make it "minimal-aware". 2018-03-22 10:24:44 +01:00
Steve Langasek
90ef53cef1 Merge lp:~vorlon/livecd-rootfs/ubuntu-channels-for-snaps 2018-03-06 10:15:00 +01:00
Iain Lane
ba4b16626f live-build-auto/{build,config}: Support fetching a file from the seed
mirror (BASE_SEED.minimal-remove) and putting it into the livefs build as
filesystem.manifest-minimal-remove. It's intended for ubiquity to read
this file as a list of packages to remove when doing a 'minimal' desktop
installation.
2018-02-23 12:08:17 +00:00
Steve Langasek
131f14d33c Use Ubuntu-specific branches when seeding snaps, as required in
<https://wiki.ubuntu.com/UbuntuSeededSnaps>.
2018-02-16 14:09:03 -08:00
Iain Lane
9978fd7b39 Support seeding of snaps, as emitted by germinate >= 2.27. 2018-01-30 10:16:36 +00:00
Steve Langasek
e6a66dd3bf Add support for passing snap channel to ubuntu-core image builds. 2018-01-12 14:56:57 -08:00
Balint Reczey
df89bff043 Drop Nexus 7 support 2018-01-06 01:26:42 +01:00
Iain Lane
07873ec528 Support seeding of snaps
We run germinate during configure, and read from each resulting <seed>.snaps
file (expanded from STRUCTURE) to find out which snaps to seed. This is written
to config/seeded-snaps, which is read during build to download each one.
2018-01-04 12:11:46 +00:00
Dimitri John Ledkov
5f64c373f1 Drop android-tools-fsutils dependency, and instead install it on
demand for the nexus7 sub-arch. This target is no longer produced,
thus by doing this android-tools can fall out of main to universe.
2017-12-11 12:22:31 +00:00
Steve Langasek
f384f10867 Merge lp:~vorlon/livecd-rootfs/minimize-round-two 2017-11-09 23:49:30 -08:00
Steve Langasek
ea2840ddfc fix wrong use of PREFIX literal 2017-11-09 16:13:25 -08:00
Steve Langasek
7c07f8a65b Change ubuntu-core image builds to use the standard "$PREFIX" naming for
artifacts instead of being gratuitously different; requires a matching
change to ubuntu-cdimage.
2017-11-09 16:13:08 -08:00
Steve Langasek
02246dbf84 move configuration bits into live-build/auto/config from live-build/auto/build, per Adam 2017-11-09 15:55:45 -08:00
Steve Langasek
696ae6e1eb Name the manifest the way ubuntu-cdimage expects it for subarchs 2017-11-08 12:35:38 -08:00