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
This commit is contained in:
parent
f91f2abc90
commit
46b1070110
8 changed files with 48 additions and 67 deletions
|
|
@ -5,9 +5,9 @@ typespec: https://raw.githubusercontent.com/blue-build/modules/main/modules/blin
|
|||
example: |
|
||||
type: bling
|
||||
install:
|
||||
# - ublue-update # https://github.com/ublue-os/ublue-update
|
||||
# - 1password # install 1Password (stable) and `op` CLI tool
|
||||
# - dconf-update-service # a service unit that updates the dconf db on boot
|
||||
# - gnome-vrr # enables gnome-vrr for your image
|
||||
# - laptop # installs TLP and configures your system for laptop usage
|
||||
# - flatpaksync # allows synchronization of user-installed flatpaks, see separate documentation section
|
||||
- ublue-update # https://github.com/ublue-os/ublue-update
|
||||
- 1password # install 1Password (stable) and `op` CLI tool
|
||||
- dconf-update-service # a service unit that updates the dconf db on boot
|
||||
- gnome-vrr # enables gnome-vrr for your image
|
||||
- laptop # installs TLP and configures your system for laptop usage
|
||||
- flatpaksync # allows synchronization of user-installed flatpaks, see separate documentation section
|
||||
|
|
|
|||
|
|
@ -51,8 +51,6 @@ The brew module installs [Homebrew / Linuxbrew](https://brew.sh/) on your system
|
|||
- `brew-update` runs at the specified time to update Brew to the latest version
|
||||
- `brew-upgrade` runs at the specified time to upgrade Brew packages
|
||||
|
||||
## Configuration Options
|
||||
|
||||
### Update
|
||||
|
||||
The Brew update operation updates the Brew binary to latest version.
|
||||
|
|
|
|||
|
|
@ -8,27 +8,35 @@ model BrewModule {
|
|||
*/
|
||||
type: "brew";
|
||||
|
||||
/** Whether to auto-update the Brew binary. */
|
||||
/** Whether to auto-update the Brew binary using a systemd service. */
|
||||
"auto-update"?: boolean = true;
|
||||
|
||||
/** Interval between Brew updates. */
|
||||
/** Defines how often the Brew update service should run. The string is passed directly to `OnUnitInactiveSec` in systemd timer. (Syntax: ['1d', '6h', '10m']). */
|
||||
"update-interval"?: string = "6h";
|
||||
|
||||
/** Time delay after boot before first Brew update .*/
|
||||
/** Time delay after system boot before the first Brew update runs. The string is passed directly to `OnBootSec` in systemd timer. (Syntax: ['1d', '6h', '10m']). */
|
||||
"update-wait-after-boot"?: string = "10min";
|
||||
|
||||
/** Wthether to auto-upgrade Brew packages. */
|
||||
/** Whether to auto-upgrade all installed Brew packages using a systemd service. */
|
||||
"auto-upgrade"?: boolean = true;
|
||||
|
||||
/** Interval between Brew package upgrades. */
|
||||
/** Defines how often the Brew upgrade service should run. The string is passed directly to `OnUnitInactiveSec` in systemd timer. (Syntax: ['1d', '6h', '10m']). */
|
||||
"upgrade-interval"?: string = "8h";
|
||||
|
||||
/** Time delay after boot before first Brew package upgrade. */
|
||||
/** Time delay after system boot before the first Brew package upgrade runs. The string is passed directly to `OnBootSec` in systemd timer. (Syntax: ['1d', '6h', '10m']). */
|
||||
"upgrade-wait-after-boot"?: string = "30min";
|
||||
|
||||
/** Whether to apply nofile limits (limits for number of open files) for Brew installations. */
|
||||
/** Whether to increase nofile limits (limits for number of open files) for Brew installations.
|
||||
* When set to true, it increases the nofile limits to prevent certain "I/O heavy" Brew packages from failing due to "too many open files" error.
|
||||
* However, it's important to note that increasing nofile limits can have potential security implications for malicious applications which would try to abuse storage I/O.
|
||||
* Defaults to false for security purposes.
|
||||
*
|
||||
* https://serverfault.com/questions/577437/what-is-the-impact-of-increasing-nofile-limits-in-etc-security-limits-conf
|
||||
*/
|
||||
"nofile-limits"?: boolean = false;
|
||||
|
||||
/** Whether to enable Brew analytics. */
|
||||
/** Whether to enable Brew analytics.
|
||||
* The Homebrew project uses analytics to anonymously collect the information about Brew usage & your system in order to improve the experience of Brew users.
|
||||
*/
|
||||
"brew-analytics"?: boolean = true;
|
||||
}
|
||||
|
|
@ -4,19 +4,5 @@ readme: https://raw.githubusercontent.com/blue-build/modules/main/modules/brew/R
|
|||
typespec: https://raw.githubusercontent.com/blue-build/modules/main/modules/brew/brew.tsp
|
||||
example: |
|
||||
type: brew
|
||||
# Auto-update Brew binary
|
||||
auto-update: true # Optional - Default: true - Expects type: boolean
|
||||
# Interval between Brew updates
|
||||
update-interval: '6h' # Optional - Default: '6h' - Expects type: string
|
||||
# Time delay after boot before first Brew update
|
||||
update-wait-after-boot: '10min' # Optional - Default: '10min' - Expects type: string
|
||||
# Auto-upgrade Brew packages
|
||||
auto-upgrade: true # Optional - Default: true - Expects type: boolean
|
||||
# Interval between Brew package upgrades
|
||||
upgrade-interval: '8h' # Optional - Default: '8h' - Expects type: string
|
||||
# Time delay after boot before first Brew upgrade
|
||||
upgrade-wait-after-boot: '30min' # Optional - Default: '30min' - Expects type: string
|
||||
# Apply nofile limits for Brew installations
|
||||
nofile-limits: false # Optional - Default: false - Expects type: boolean
|
||||
# Control Brew analytics
|
||||
brew-analytics: true # Optional - Default: true - Expects type: boolean
|
||||
nofile-limits: true # increase nofile limits
|
||||
brew-analytics: false # disable telemetry
|
||||
|
|
|
|||
|
|
@ -4,18 +4,7 @@ readme: https://raw.githubusercontent.com/blue-build/modules/main/modules/chezmo
|
|||
typespec: https://raw.githubusercontent.com/blue-build/modules/main/modules/chezmoi/chezmoi.tsp
|
||||
example: |
|
||||
type: chezmoi
|
||||
# Git repository to initialize
|
||||
repository: "https://example.org/user/dotfiles" # Required - Default: n/a - Expects type: string
|
||||
# Whether to enable the modules services globally for all users, if false users need to enable services manually
|
||||
all-users: true # Optional - Default: true - Expects type: boolean
|
||||
# Dotfiles will be updated with this interval
|
||||
run-every: '1d' # Optional - Default: '1d' - Expects type: string
|
||||
# Dotfile updates will wait this long after a boot before running
|
||||
wait-after-boot: '5m' # Optional - Default: '5m' - Expects type: string
|
||||
# Disable the service that initializes `repository` on users that are logged in or have linger enabled
|
||||
disable-init: false # Optional - Default: false - Expects type: boolean
|
||||
# Disable the timer that updates chezmoi with the interval set above
|
||||
disable-update: false # Optional - Default: false - Expects type: boolean
|
||||
# What to do when file different that exists on your repo is has been changed or exists locally. Accepts "skip" or "replace"
|
||||
file-conflict-policy: "skip" # Optional - Default: "skip" - Expects type: string
|
||||
repository: "https://github.com/octocat/dotfiles" # my dotfiles repo
|
||||
all-users: false # make users have to enable chezmoi manually
|
||||
file-conflict-policy: replace # override changed files with those from the repo
|
||||
|
||||
|
|
|
|||
|
|
@ -6,13 +6,15 @@ example: |
|
|||
type: rpm-ostree
|
||||
repos:
|
||||
- https://copr.fedorainfracloud.org/coprs/atim/starship/repo/fedora-%OS_VERSION%/atim-starship-fedora-%OS_VERSION%.repo # when including COPR repos, use the %OS_VERSION% magic string
|
||||
- https://pkgs.tailscale.com/stable/fedora/tailscale.repo
|
||||
- https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo
|
||||
keys:
|
||||
- https://brave-browser-rpm-release.s3.brave.com/brave-core.asc
|
||||
optfix:
|
||||
- Tabby # needed because tabby installs into /opt/Tabby
|
||||
install:
|
||||
- python3-pip
|
||||
- libadwaita
|
||||
- starship
|
||||
- brave-browser
|
||||
- https://github.com/Eugeny/tabby/releases/download/v1.0.209/tabby-1.0.209-linux-x64.rpm
|
||||
remove:
|
||||
- firefox
|
||||
- firefox-langpacks
|
||||
|
|
@ -21,8 +23,4 @@ example: |
|
|||
packages:
|
||||
- mutter
|
||||
- mutter-common
|
||||
- gdm
|
||||
- from-repo: https://copr.fedorainfracloud.org/coprs/owner/repository2/repo/fedora-%OS_VERSION%/owner-repository2-fedora-%OS_VERSION%.repo
|
||||
packages:
|
||||
- package4
|
||||
- package5
|
||||
- gdm
|
||||
|
|
@ -14,9 +14,20 @@ model RpmOstreeModule {
|
|||
/** 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>,
|
||||
}>;
|
||||
}
|
||||
|
|
@ -4,21 +4,12 @@ readme: https://raw.githubusercontent.com/blue-build/modules/main/modules/system
|
|||
typespec: https://raw.githubusercontent.com/blue-build/modules/main/modules/systemd/systemd.tsp
|
||||
example: |
|
||||
type: systemd
|
||||
# this example disables automatic flatpak updates and enables a custom service unit for all users
|
||||
system:
|
||||
enabled:
|
||||
- example.service # Enabled (runs on system boot)
|
||||
disabled:
|
||||
- example.target # Disabled (does not run on system boot, unless another unit strictly requires it)
|
||||
masked:
|
||||
- example.service # Masked (does not run on system boot, under any circumstances)
|
||||
unmasked:
|
||||
- example.service # Unmasked (runs on system boot, even if previously masked)
|
||||
- flatpak-system-update.timer
|
||||
user:
|
||||
enabled:
|
||||
- example.timer # Enabled (runs for the users)
|
||||
- my-custom.service
|
||||
disabled:
|
||||
- example.service # Disabled (does not run for the users, unless another unit strictly requires it)
|
||||
masked:
|
||||
- example.service # Masked (does not run for the users, under any circumstances)
|
||||
unmasked:
|
||||
- example.service # Unmasked (runs for the users, even if previously masked)
|
||||
- flatpak-user-update.timer
|
||||
Loading…
Add table
Add a link
Reference in a new issue