particle-os-modules/modules/rpm-ostree/rpm-ostree.tsp
xyny 46b1070110
docs: improve examples, remove docs superseded by typespec docstrings (#279)
* chore(bling): uncomment example options

* refactor(brew): remove duplicate "configuration options" setting in README, improve TSP docs

* fix(chezmoi): make example an example and not a doc of the configuration options

* chore(rpm-ostree): remove fake example

examples should be runnable

* fix(rpm-ostree): add replacing packages to typespec schema

* fix(rpm-ostree): actually install the packages the repos are added for

* feat(rpm-ostree): showcase installing from URL and using optfix in example

* fix(rpm-ostree): add optfix to typespec

* fix(systemd): real-world example instead of configuration docs duplicate
2024-07-16 17:09:00 +00:00

33 lines
No EOL
1.1 KiB
Text

import "@typespec/json-schema";
using TypeSpec.JsonSchema;
@jsonSchema("/modules/rpm-ostree.json")
model RpmOstreeModule {
/** The rpm-ostree module offers pseudo-declarative package and repository management using rpm-ostree.
* https://blue-build.org/reference/modules/rpm-ostree/
*/
type: "rpm-ostree";
/** List of links to .repo files to download into /etc/yum.repos.d/. */
repos?: Array<string>;
/** List of links to key files to import for installing from custom repositories. */
keys?: Array<string>;
/** List of folder names under /opt/ to enable for installing into. */
optfix?: Array<string>;
/** List of RPM packages to install. */
install?: Array<string>;
/** List of RPM packages to remove. */
remove?: Array<string>;
/** List of configurations for `rpm-ostree override replace`ing packages. */
replace?: Array<{
/** URL to the source COPR repo for the new packages. */
"from-repo": string,
/** List of packages to replace using packages from the defined repo. */
packages: Array<string>,
}>;
}