summaryrefslogtreecommitdiff
path: root/docs/PORTABLE_SERVICES.md
Commit message (Collapse)AuthorAgeFilesLines
* portable: add PORTABLE_NAME_AND_VERSION= and other metadata to LogsExtraFields=Luca Boccassi2023-03-281-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is useful to identify log messages with metadata from the images they run on. Look for ID/VERSION_ID/IMAGE_ID/IMAGE_VERSION/BUILD_ID, with a SYSEXT_ prefix if we are looking at an extension, and append via LogExtraFields= as respectively PORTABLE_NAME_AND_VERSION= in case of a single image. In case of extensions, append as PORTABLE_ROOT_NAME_AND_VERSION= for the base and one PORTABLE_EXTENSION_AND_VERSION= for each extension. Example with a base and two extensions, with the unit coming from the first extension: [Service] RootImage=/home/bluca/git/systemd/base.raw Environment=PORTABLE=app0.raw BindReadOnlyPaths=/etc/os-release:/run/host/os-release LogExtraFields=PORTABLE=app0.raw Environment=PORTABLE_ROOT=base.raw LogExtraFields=PORTABLE_ROOT=base.raw LogExtraFields=PORTABLE_ROOT_NAME_AND_VERSION=debian_10 ExtensionImages=/home/bluca/git/systemd/app0.raw LogExtraFields=PORTABLE_EXTENSION=app0.raw LogExtraFields=PORTABLE_EXTENSION_NAME_AND_VERSION=app_0 ExtensionImages=/home/bluca/git/systemd/app1.raw LogExtraFields=PORTABLE_EXTENSION=app1.raw LogExtraFields=PORTABLE_EXTENSION_NAME_AND_VERSION=app_1
* portable: include base and extension images in log fieldsLuca Boccassi2023-03-281-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a portable service uses extensions, we use the 'main' image name (the one where the unit was found in) as PORTABLE=. It is useful to also list all the images actually used at runtime, as they might contain libraries and so on. Use PORTABLE_ROOT= for the image/directory that is used as RootImage= or RootDirectory=, and PORTABLE_EXTENSION= for the image/directory that is used as ExtensionImages= or ExtensionDirectories=. Note that these new fields are only added if extensions are used, there's no change for single-DDI portables. Example with a base and two extensions, with the unit coming from the first extension: [Service] RootImage=/home/bluca/git/systemd/base.raw Environment=PORTABLE=app0.raw BindReadOnlyPaths=/etc/os-release:/run/host/os-release LogExtraFields=PORTABLE=app0.raw LogExtraFields=PORTABLE_ROOT=base.raw ExtensionImages=/home/bluca/git/systemd/app0.raw LogExtraFields=PORTABLE_EXTENSION=app0.raw ExtensionImages=/home/bluca/git/systemd/app1.raw LogExtraFields=PORTABLE_EXTENSION=app1.raw
* docs: fix grammar a bitDmitry V. Levin2023-01-231-2/+2
|
* docs: fix a few typosDmitry V. Levin2023-01-231-1/+1
|
* repart: support erofsLennart Poettering2022-12-101-2/+2
| | | | | | | | | | | | | | | So, i think "erofs" is probably the better, more modern alternative to "squashfs". Many of the benefits don't matter too much to us I guess, but there's one thing that stands out: erofs has a UUID in the superblock, squashfs has not. Having an UUID in the superblock matters if the file systems are used in an overlayfs stack, as overlayfs uses the UUIDs to robustly and persistently reference inodes on layers in case of metadata copy-up. Since we probably want to allow such uses in overlayfs as emplyoed by sysext (and the future syscfg) we probably should ramp up our erofs game early on. Hence let's natively support erofs, test it, and in fact mention it in the docs before squashfs even.
* tree-wide: BLS and DPS are now on uapi-group websiteZbigniew Jędrzejewski-Szmek2022-11-211-1/+1
|
* tree-wide: replace "plural(s)" by "plurals"Zbigniew Jędrzejewski-Szmek2022-10-171-5/+5
| | | | | | | | (s) is just ugly with a vibe of DOS. In most cases just using the normal plural form is more natural and gramatically correct. There are some log_debug() statements left, and texts in foreign licenses or headers. Those are not touched on purpose.
* docs: use relative linksBenjamin Franzke2022-05-181-2/+2
| | | | | | | | | | | | | | | | Allows for links to work both on systemd.io (or forks) and when viewed on https://github.com/systemd/systemd/tree/main/docs Note that the markdown links are converted by jekyll-relative-links[1] to html. This plugin is enabled by default on github pages[2][3]. Due to a bug in jekyll-relative-links – see https://github.com/benbalter/jekyll-relative-links/issues/61 – we need to avoid line-wrapped links when using relative markdown links. [1] https://github.com/benbalter/jekyll-relative-links [2] https://github.blog/2016-12-05-relative-links-for-github-pages/ [3] https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/about-github-pages-and-jekyll#plugins
* docs: make man page links in markdown Links section use teletype font, as we ↵Lennart Poettering2022-03-231-2/+2
| | | | usually do
* docs: add more links for portabledZbigniew Jędrzejewski-Szmek2022-03-071-0/+7
|
* portable: add support for ExtensionDirectories in --extensionLuca Boccassi2022-01-241-1/+4
| | | | | Same as for the root os image, support passing a directory, using the new ExtensionDirectories setting.
* os-release: add new PORTABLE_PREFIXES= field for declaring valid portable ↵Lennart Poettering2021-11-231-0/+14
| | | | service match prefixes
* Typos found by codespellDimitri Papadopoulos2021-10-201-1/+1
|
* docs: add spdx tags to all .md filesZbigniew Jędrzejewski-Szmek2021-09-271-0/+1
| | | | | | I have no idea if this is going to cause rendering problems, and it is fairly hard to check. So let's just merge this, and if it github markdown processor doesn't like it, revert.
* docs: polish the text about Portable Services a bitZbigniew Jędrzejewski-Szmek2021-09-081-64/+64
| | | | | No semantic changes, just removal of repetitions and unnecessary words, and some more formatting.
* docs: portablectl is in bin/Zbigniew Jędrzejewski-Szmek2021-09-081-4/+4
| | | | Follow-up for 80f39b81f3876ed3816061f1093db991f72269ec.
* docs: portable services are no longer in previewLuca Boccassi2021-08-181-11/+7
| | | | | Reword the intro to the document, as portable services are a stable interface and no longer a preview.
* docs: document layered images in PORTABLE_SERVICES.mdLuca Boccassi2021-08-171-9/+44
|
* docs: Fix typos in PORTABLE_SERVICES.mdPhaedrus Leeds2021-05-061-9/+9
|
* docs: import discoverable partitions specLennart Poettering2019-12-231-1/+1
| | | | | | | | This was previously available here: https://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/ Let's pull it into our repository.
* docs: make it prettyTobias Bernard2019-12-111-0/+1
| | | | | | | Add custom Jekyll theme, logo, webfont and .gitignore FIXME: the markdown files have some H1 headers which need to be replaced with H2
* docs: place all our markdown docs in rough categoriesLennart Poettering2019-12-111-0/+1
|
* docs: fix path to unit filesLennart Poettering2019-04-031-11/+11
|
* docs: comprehensively document what a minimal portable service image needs ↵Lennart Poettering2019-03-141-7/+32
| | | | | | | | to include The docs were incomplete on this. Let's fix that. Fixes: #11870
* portable: document /etc/machine-id and /etc/resolv.confДамјан Георгиевски2019-02-041-4/+8
| | | | | | | | … requirement for portable service images. systemd will mount the host machine-id and resolv.conf at these locations, so for read-only images these must exist in the image, because they can't be created.
* docs: add a "front matter" snippet to our markdown pagesFilipe Brandenburger2019-01-021-0/+4
| | | | | | | | | | | | | | | | It turns out Jekyll (the engine behind GitHub Pages) requires that pages include a "Front Matter" snippet of YAML at the top for proper rendering. Omitting it will still render the pages, but including it opens up new possibilities, such as using a {% for %} loop to generate index.md instead of requiring a separate script. I'm hoping this will also fix the issue with some of the pages (notably CODE_OF_CONDUCT.html) not being available under systemd.io Tested locally by rendering the website with Jekyll. Before this change, the *.md files were kept unchanged (so not sure how that even works?!), after this commit, proper *.html files were generated from it.
* docs: use h2 headersMichael Biebl2018-10-181-8/+8
| | | | | | | The primer theme does not add a mouse-over anchor link for h1 headers. So use h2 for subsection headers which looks nicer anyway. Followup for #10421
* man,docs: document the new unit file directory for attached imagesLennart Poettering2018-10-081-7/+8
|
* docs: move doc/ to docs/Filipe Brandenburger2018-09-081-0/+251
The docs/ directory is special in GitHub, since it can be used to serve GitHub Pages from, so there's a benefit to switching to it in order to expose it directly as a website. Updated references to it from the documentations themselves, from the CONTRIBUTING.md file and from Meson build files.