summaryrefslogtreecommitdiff
path: root/man
Commit message (Collapse)AuthorAgeFilesLines
...
* src/ostree: Add --group option to ostree configSinny Kumari2018-08-201-3/+3
| | | | | | | | | | | | | | | | | | | | | Fetching value from a repo config using 'ostree config get SECTIONNAME.KEYNAME' didn't work in some cases like when having dots in Group Name entry. As per Desktop entry file specification, Group Name may contain all ASCII characters except for [ and ] and control characters. Link - https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.1.html Having --group option will help user to clearly specify Group Name and get desired result. It also adds test for ostree config get|set and bash completion for --group option Fixes https://github.com/ostreedev/ostree/issues/1565 Closes: #1696 Approved by: cgwalters
* man/ostree.repo-config: improve min-free-space-* docsWill Thompson2018-08-191-14/+26
| | | | | | | | | | | | | | | | 0 is not a valid value (the units are required), and 1MB is taken to mean 1048576 bytes, not 1000000 bytes (unlike other human-readable sizes in libostree, which are formatted by g_format_size(), and hence use power-of-10 units). It's probably a bit late to change this latter point, but the documentation should mention it. Define 'MB' etc. more precisely; include the byte counts in the examples; and improve the formatting of the min-free-space-* paragraphs. Signed-off-by: Will Thompson <wjt@endlessm.com> Closes: #1706 Approved by: mwleeds
* lib/config: Deprecate commit-update-summary optionJonathan Lebon2018-08-011-10/+10
| | | | | | | | | | | | | | | | Now that we have `auto-update-summary`, there is no point in having `commit-update-summary`. The latter also only had an effect through the `commit` CLI command, whereas the former is embedded directly in libostree. There is one corner case that slips through: `commit` would update the summary file even if orphan commits were created, which we no longer do here. I can't imagine anyone relying on this, so it seems safe to drop. Closes: #1689 Closes: #1693 Approved by: mwleeds
* lib/config: Rename change-update-summary to auto-...Jonathan Lebon2018-08-011-1/+1
| | | | | | | | | Mildly bikeshed, though I find the name `auto-update-summary` to be easier to grok than `change-update-summary`. I think it's because it can be read as "verb-verb-noun" rather than "noun-verb-noun". Closes: #1693 Approved by: mwleeds
* config: Add a core/change-update-summary optionMatthew Leeds2018-07-301-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commits adds and implements a boolean repo config option called "change-update-summary" which updates the summary file every time a ref changes (additions, updates, and deletions). The main impetus for this feature is that the `ostree create-usb` and `flatpak create-usb` commands depend on the repo summary being up to date. On the command line you can work around this by asking the user to run `ostree summary --update` but in the case of GNOME Software calling out to `flatpak create-usb` this wouldn't work because it's running as a user and the repo is owned by root. That strategy also means flatpak can't update the repo metadata refs for fear of invalidating the summary. Another use case for this relates to LAN updates. Specifically, the component of eos-updater that generates DNS-SD records advertising ostree refs depends on the repo summary being up to date. Since ostree_repo_regenerate_summary() now takes an exclusive lock, this should be safe to enable. However it's not enabled by default because of the performance cost, and because it's more useful on clients than servers (which likely have another mechanism for updating the summary). Fixes https://github.com/ostreedev/ostree/issues/1664 Closes: #1681 Approved by: jlebon
* man/ostree.repo-config: Update min-free-space-* docsMatthew Leeds2018-07-251-5/+8
| | | | | | | | | Now that it's possible to have both min-free-space-size and min-free-space-percent set in a repo config, update the docs to make the behavior clear in that case. Closes: #1687 Approved by: jlebon
* lib/repo: Allow min-free-space-size and -percent to co-existUmang Jain2018-07-201-1/+4
| | | | | | | | | | | | | | | | | | | | | | Previously, we would error out if both of the options were mentioned in the config file (even if one of them is disabled with 0). There were few suggestions that this behavior was not quite right. Therefore, instead of throwing error and exiting, it's preferred to warn the user. Hence, the solution that worked out is: * Allow both options to exist simulateneously * Check each config's value and decide: * If both are present and are non-zero, warn the user. Also, prefer to use min-free-space-size over the another. * If both are absent, then use -percent=3% as fallback * Every other case is valid hence, no warning https://phabricator.endlessm.com/T13698 (cherry picked from commit be68991cf80f0aa1da7d36ab6e1d2c4d6c7cd3fb) Signed-off-by: Robert McQueen <rob@endlessm.com> Closes: #1685 Approved by: cgwalters
* ostree/pull: Add network-retries command line optionRobert Fairley2018-07-051-0/+8
| | | | | | | | | | | | This exposes a way to specify from the command line the number of times to retry each download after a network error. If a negative value is given, then the default number of retries (5) is used. If 0 is given, then errors are returned without retrying. closes #1659 Closes: #1669 Approved by: jlebon
* lib/repo: Minor fixes around min-free-spaceUmang Jain2018-07-031-3/+3
| | | | | | | | | | | Summary: * Remove a useless if condition in prepare_transaction() * Fix glnx_throw error propagation * Integer overflow check while parsing min-free-space-size config * Documentation fixes Closes: #1663 Approved by: jlebon
* man/ostree.repo-config: Document collection-idMatthew Leeds2018-06-261-0/+9
| | | | | | | | The collection-id option in the core section was recently made public but not documented. Closes: #1646 Approved by: cgwalters
* lib/repo: Add min-free-space-size optionUmang Jain2018-06-131-0/+9
| | | | | | | | | | | | | | | Similar to min-free-space-percent but it supports specific sizes (in MB, GB or TB). Also, making min-free-space-percent and -size mutually exclusive. min-free-space-percent does not give a fine tuning of the free disk space that a user might decide to keep. It can translate to very large size (e.g. 1% = ~10GB on 1TB HDD) or very small (e.g. 1% = ~330MB on 32GB system like Endless devices). Hence, it makes sense to introduce a config option to honor specific size as per the user. Closes: #1616 Approved by: jlebon
* admin: Fix list of subcommands in help and manpageMatthew Leeds2018-06-121-2/+4
| | | | | | | | | This adds subcommands that were missing from the ostree-admin man page, and makes cosmetic fixes there and in the --help output to ensure alphabetical order and remove trailing whitespace. Closes: #1621 Approved by: jlebon
* Make P2P API public (no longer experimental)Matthew Leeds2018-06-043-10/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the API that allows P2P operations (e.g. pulling an ostree ref from a LAN or USB source) is hidden behind the configure flag --enable-experimental-api. This commit makes the API public and makes that flag essentially a no-op (leaving it in place in case we want to use it again in the future). The P2P API has been tested over the last several months and proven to work. This means that since we're no longer using the "experimental" feature flag, P2P builds of Flatpak will fail when using versions of OSTree from this commit onwards, until Flatpak is patched in the near future. If you want to build Flatpak < 0.11.8 with P2P enabled and link against OSTree 2018.6, you'll have to patch Flatpak. However, since Flatpak won't yet have a hard dependency on OSTree 2018.6, it needs a new way to determine if the P2P API in OSTree is available, so this commit adds a "p2p" feature flag. This way the feature set is more semantically correct than if we had continued to use the "experimental" feature flag. In addition to making the P2P API public, this commit makes the P2P unit tests run by default, removes the f27-experimental CI instance that's no longer needed, changes a few man pages to reflect the changes, and updates the bash completion script to accept the new commands and options. Closes: #1596 Approved by: cgwalters
* man/ostree-init: Briefly describe various modesJonathan Lebon2018-04-301-7/+18
| | | | | | | Closes: #1561 Closes: #1560 Approved by: cgwalters
* man/ostree: Document --repo option a bit moreJonathan Lebon2018-04-301-8/+8
| | | | | | | | | This new information is already mostly part of `ostree.repo(5)`, though let's put it in `ostree(1)` as well since that's where the switch is officially documented. Closes: #1560 Approved by: cgwalters
* man: Add man page for create-usbMatthew Leeds2018-04-193-0/+142
| | | | | Closes: #1543 Approved by: cgwalters
* commit: add logic for .payload-linkGiuseppe Scrivano2018-03-071-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | When a new object is added to the repository, create a $PAYLOAD-SHA256.payload-link symlink file as well. The target of the symlink is the checksum of the object that was added the repository. Whenever we add a new object file, in addition to lookup if the file is already present with the same checksum we also check if an object with the same payload is in the repository. If a file with the same payload is already present in the repository, we copy it with `glnx_regfile_copy_bytes` that internally attempts to create a reflink (ioctl (..., FICLONE, ..)) to the target file if the file system supports it. This enables to have objects that share the payload but have a different inode and xattrs. By default the payload-link-threshold value is G_MAXUINT64 that disables the feature. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com> Closes: #1443 Approved by: cgwalters
* docs/prune: Document that --static-deltas-only isn't that usefulColin Walters2018-03-061-2/+6
| | | | | | | | | This is the documentation followup to: https://github.com/ostreedev/ostree/pull/1482 See also https://github.com/ostreedev/ostree/issues/1481 Closes: #1484 Approved by: jlebon
* sysroot: Add concept of deployment "pinning" đź“ŚColin Walters2018-02-261-0/+82
| | | | | | | | | | | | | Example user story: Jane rebases her OS to a new major version N, and wants to keep around N-1 even after a few upgrades for a while so she can easily roll back. I plan to add `rpm-ostree rebase --pin` to opt-in to this for example. Builds on the new `libostree-transient` group to store pinning state there. Closes: https://github.com/ostreedev/ostree/issues/1460 Closes: #1464 Approved by: jlebon
* Add SPDX-License-Identifier to source filesMarcus Folkesson2018-01-3041-0/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | SPDX License List is a list of (common) open source licenses that can be referred to by a “short identifier”. It has several advantages compared to the common "license header texts" usually found in source files. Some of the advantages: * It is precise; there is no ambiguity due to variations in license header text * It is language neutral * It is easy to machine process * It is concise * It is simple and can be used without much cost in interpreted environments like java Script, etc. * An SPDX license identifier is immutable. * It provides simple guidance for developers who want to make sure the license for their code is respected See http://spdx.org for further reading. Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> Closes: #1439 Approved by: cgwalters
* man: Add man page for find-remotesMatthew Leeds2018-01-152-0/+140
| | | | | Closes: #1410 Approved by: pwithnall
* man: Update ostree-summary.xmlMatthew Leeds2018-01-151-14/+57
| | | | | | | | Update the man page for the summary command to add the undocumented options, make the syntax clear, and add examples. Closes: #1416 Approved by: pwithnall
* bin/fsck: Make ref binding verification optionalColin Walters2017-12-141-5/+15
| | | | | | | | | | | | | Today the rpm-ostree test suite uses `refs --create` to save commits. I think this is a legitimate use case, and other people may be doing something similar. On the other hand, I think we should probably be changing the rpm-ostree test suite to create "unbound" commits. But let's be maximially compatible here since we hit a real-world case where something needed to change. Closes: #1379 Approved by: pwithnall
* ostree/fsck: Add --verify-back-refs optionPhilip Withnall2017-12-141-0/+11
| | | | | | | | | | | | | | | | | | This new option verifies that the refs listed in the ref-bindings for each commit all point to that commit (i.e. there aren’t multiple commits listing the same ref in their ref-bindings, and there aren’t any commits with non-empty ref-bindings which aren’t pointed at by a ref). This is useful when generating a new repository from scratch, but not useful when adding new commits to an existing repository (since the old commits will still, correctly, have ref-bindings from when the refs pointed at them). That’s why it has to be enabled explicitly using --verify-back-refs, rather than being on by default. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #1347 Approved by: cgwalters
* pull: Add http2=false remote config optionColin Walters2017-12-071-0/+8
| | | | | | | | | | | This seems to work around https://github.com/ostreedev/ostree/issues/1362 Though I'm not entirely sure why yet. But at least with this it'll be easier for people to work around things locally. Closes: #1368 Approved by: jlebon
* lib/core: add ostree_checksum_file_at APIJonathan Lebon2017-10-121-0/+13
| | | | | | | | | | | This is like `ostree_checksum_file` but fd-relative. This will be used by https://github.com/ostreedev/ostree/pull/1258. AFAICT, we actually didn't have any tests that check the `checksum` CLI. Add a basic one here to test the old code as well as the new code. Closes: #1263 Approved by: cgwalters
* commit: Add _CONSUME modifier flagColin Walters2017-10-101-0/+11
| | | | | | | | | | | | | | For many cases of commit, we can actually optimize things by simply "adopting" the object rather than writing a new copy. For example, in rpm-ostree package layering. We can only make that optimization though if we take ownership of the file. This commit hence adds an API where a caller tells us to do so. For now, that just means we `unlink()` the files/dirs as we go, but we can now later add the "adopt" optimization. Closes: #1255 Approved by: jlebon
* ostree/summary: Generate an ostree-metadata ref when updating summaryPhilip Withnall2017-10-021-1/+10
| | | | | | | | | | | | | | | | | | | | | This is the new way of publishing repository metadata, rather than as additional-metadata in the summary file. The use of an ostree-metadata ref means that the metadata from multiple upstream collections is not conflated when doing P2P mirroring of many repositories. The new ref is only generated if the repository has a collection ID set. The old summary file continues to be generated for backwards compatibility (and because it continues to be the canonical ref → checksum map for the repository). The new code is only used if configured with --enable-experimental-api. Includes unit tests. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #1158 Approved by: cgwalters
* man: Fix a copypasta error in ostree-summary.xmlPhilip Withnall2017-10-021-1/+1
| | | | | | | Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #1158 Approved by: cgwalters
* lib/checkout: Rename disjoint union, change to merge identical filesColin Walters2017-09-131-4/+5
| | | | | | | | | | | | | It turns out that librpm automatically merges identical files between distinct packages, and this occurs in practice with Fedora today between `chkconfig` and `initscripts` for exmaple. Since we added this for rpm-ostree, we basically want to do what librpm does, let's change the semantics to do a merge. While we're here rename to `UNION_IDENTICAL`. Closes: #1156 Approved by: jlebon
* repo: Add add-remotes-config-dir optionDan Nicholson2017-09-111-0/+21
| | | | | | | | | | | | | | | | | | This option allows a repo to explicitly opt out of adding new remotes in a remotes configuration directory. This currently defaults to true for system repos and false for non-system repos to maintain legacy behavior that non-system repos don't add remotes in a configuration directory. That would be problematic for flatpak, which specifies a remotes config dir but adds remotes in ways that are incompatible with it. So, what this really does is allow system repos to control whether they want to add remotes in the config dir or not. That's important if your flatpak repo is the system repo like at Endless. Closes: #1134 Closes: #1155 Approved by: cgwalters
* tree-wide: Replace archive-z2 with archiveColin Walters2017-09-013-5/+9
| | | | | | | | | | | | In almost all places. There are just a few exceptions; one tricky bit for example is that the repo config must still have `mode=archive-z2`, since `archive` used to mean something else. (We could very likely just get rid of that check, but eh, later). I also added a test that one can still do `ostree repo init --mode=archive-z2`. Closes: #1125 Approved by: jlebon
* checkout: add an extra checkout_overwrite modeRuixin2017-09-011-0/+8
| | | | | | | | | | | | This is for issue projectatomic/rpm-ostree#365, an extra option of overwrite mode is added to the checkout command so that when there is "non-directory" file already exist during checkout, the error will be handled. Some tests are added for regression Closes: #1116 Approved by: cgwalters
* ostree-sysroot: make simple_write_deployment smarterJonathan Lebon2017-08-251-0/+24
| | | | | | | | | | | | | | | | | | | | This is a follow-up to https://github.com/ostreedev/ostree/pull/1097. We make simple_write_deployment smart enough so that it can be used for rpm-ostree's purposes. This is mostly an upstreaming of logic that already existed there. Notably we correctly append NOT_DEFAULT deployments *after* the booted deployment and we now support RETAIN_PENDING and RETAIN_ROLLBACK flags to have more granularity on deployment pruning. Expose these new flags on the CLI using new options (as well as expose the previously existing NOT_DEFAULT flag as --not-as-default). I couldn't add tests for --retain-pending because the merge deployment is always the topmost one. Though I did check that it worked in a VM. Closes: #1110 Approved by: cgwalters
* pull: better description for --mirrorJonathan Lebon2017-08-231-1/+6
| | | | | | | | | Describe the behaviour of --mirror a bit better. Closes: #1100 Closes: #1099 Approved by: dustymabe
* pull: mark commits from local cache as partialJonathan Lebon2017-08-141-1/+1
| | | | | | | | | | | If one of the localcache repos has the exact same commit we resolved from the remote, then we need to make sure to mark it as partial so that we download the full tree. Closes: #1074 Closes: #1076 Approved by: cgwalters
* man: document configured branchesJonathan Lebon2017-08-103-1/+15
| | | | | | | Closes: #1072 Closes: #1073 Approved by: guyshapiro
* man: Update ostree-refs manpageMatthew Leeds2017-08-101-4/+25
| | | | | | | | Update the ostree-refs manpage to document recently added options, and fix some minor mistakes. Closes: #1068 Approved by: cgwalters
* man: The min-free-space-percent item goes in [core] sectionStef Walter2017-08-081-7/+8
| | | | | | | | The documentation incorrectly indicates that min-free-space-percent goes in the [remote "name"] section. It should go in [core] instead. Closes: #1062 Approved by: cgwalters
* Documentation: static delta default fromGuy Shapiro2017-08-071-0/+2
| | | | | | Document that the default behavior of `ostree static-delta generate` if to generate the delta from the parent. Closes: #1057 Approved by: cgwalters
* docs/pull: Finish incomplete docs for pull@hash syntaxColin Walters2017-08-011-2/+5
| | | | | | | Closes: https://github.com/ostreedev/ostree/issues/1043 Closes: #1045 Approved by: guyshapiro
* lib/repo: Add min-free-space-percent option, default 3%Colin Walters2017-07-041-0/+8
| | | | | | | | | | | | | | | | For ostree-as-host, we're the superuser, so we'll blow past any reserved free space by default. While deltas have size metadata, if one happens to do a loose fetch, we can fill up the disk. Another case is flatpak: the system helper has similar concerns here as ostree-as-host, and for `flatpak --user`, we also want to be nice and avoid filling up the user's quota. Closes: https://github.com/ostreedev/ostree/issues/962 Closes: #987 Approved by: jlebon
* Add "pull --localcache-repo"Colin Walters2017-06-301-0/+10
| | | | | | | | | | | | | | | | | | | | | This is a lot like `git clone --reference`, but we chose "localcache" as the term "reference" is already used. The main use case I'm targeting this for is the Fedora Atomic Host installer case where we embed the repo content in the installer, but we may want to kickstart and download newer content. There, while we want to get a newer ref, we can still use the local repo as an object cache, since we have it sitting there in memory anyways. Another case is where one has a host ostree (say e.g. Fedora Atomic Workstation), and one wants to create a local archive mirror of FAH. Then one can use `pull --reference /ostree/repo` and pull the common objects (e.g. contents of `bash.rpm` etc.) Closes: https://github.com/ostreedev/ostree/issues/975 Closes: #982 Approved by: jlebon
* ostree/summary: Add support for adding additional metadataPhilip Withnall2017-06-271-1/+10
| | | | | | | | | | | | When updating a summary file, parse additional arguments to the `ostree summary` command as additional metadata to be put into the summary. Add some tests for this. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #961 Approved by: cgwalters
* refs: Add a --collections argument to the built-in refs commandPhilip Withnall2017-06-261-0/+20
| | | | | | | | | | | | | | Rather than change the output format used by the existing refs command to output collection IDs in addition to ref names, this functionality has been hidden behind an --collections argument. If it’s not specified `ostree refs` will output the same content as before for a given repository. If it is specified, the collection ID for each ref will be included in the output as (collection ID, ref name). Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #924 Approved by: cgwalters
* remote-add: Add a --collection-id argument to the built-in add commandPhilip Withnall2017-06-261-0/+10
| | | | | | | | | | | This allows newly configured remotes to have their collection ID specified, so that refs from them can be downloaded from peers as well as the upstream collection, using the remote’s configuration. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #924 Approved by: cgwalters
* init: Add a --collection-id argument to the built-in init commandPhilip Withnall2017-06-261-0/+26
| | | | | | | | | | | This allows new repositories to be configured with a collection ID which can be used to uniquely identify refs which originated from this repository. Signed-off-by: Philip Withnall <withnall@endlessm.com> Closes: #924 Approved by: cgwalters
* Rename "osname" → "stateroot"Colin Walters2017-04-246-11/+16
| | | | | | | | | | | | | | | | I never really liked the term "osname". I feel "stateroot" is a *lot* clearer, since the osname/stateroot mostly just holds `/var`. Further it avoids the `os` prefix which is already overloaded. Some of the existing docs already talked about "operating system state", which further reinforces this. There's *lot* more things than this which reference the term "osname", but I don't want to change *everything* yet in this patch in case we decide to do something different - this just gets the highlights. Closes: #794 Approved by: jlebon
* diff: Add ostree_diff_dirs_with_options(), expose via cmdlineErik Larsson2017-03-211-0/+14
| | | | | | | | The first options are owner_uid/owner_gid, which makes it possible to use diff on local files where --owner-uid/gid have been passed to commit. Closes: #740 Approved by: cgwalters
* checkout: Support a "pure addition" modeColin Walters2017-03-061-0/+8
| | | | | | | | I plan to use this for `rpm-ostree livefs`. https://github.com/projectatomic/rpm-ostree/issues/639 Closes: #714 Approved by: jlebon