Commit Graph
283 Commits
Author SHA1 Message Date
Alexander Larsson 0abdcd3f03 Merge pull request #345 from mariospr/issue221
Add server-side support for default-branch for remote repositories
2016-10-17 12:31:07 +02:00
Alexander Larsson 4cb3f7fd79 builder: Support application inheritance
When initializing a build you can initialize the application directory
with the files from another directory, and optionally a set of its
extensions. This allows one to create a "base" application that
can be derived from in multiple forms. A typical example is an application
framework like Electron. The base electron app has all the dependencies
needed to write Electron app, and then your manifest can add the specific
files needed for your application.

An example snipped could look something like:

    "base": "org.base.App",
    "base-version": "stable",
    "base-extensions": ["org.base.app.Locale", "org.base.app.Debug" ],
2016-10-17 11:40:57 +02:00
Alexander Larsson d628350794 build-init: Support --base to create an application based on another 2016-10-17 11:37:19 +02:00
Matt Watson b9521e719b builder: add allow missing runtimes options
The --allow-missing-runtimes options will allow flatpak builder to
not abort immediately if the sdk or runtime for the app being built
are missing.

This option will be useless when building anything in the modules
section of the app manifest. The calls to flatpak-build will fail
because of the missing sdk.

However, it may be useful when an application does not require
building anything inside the sandbox, and the application files
will be installed via other means.
2016-10-17 09:49:34 +02:00
Matt Watson e968b87f6a builder: add a build finish option
With the option you can resume an application build where it left
off when calling flatpak-buidler --build-only
2016-10-17 09:49:34 +02:00
Alexander Larsson f9ed36e092 docs: Fix docs for no-debuginfo
This was documented in reverse, see:

https://github.com/flatpak/flatpak/issues/349
2016-10-17 09:42:56 +02:00
Mario Sanchez Prada 8decac7d7f Added new public API: flatpak_installation_update_remote_sync()
Provides access to the functionality offered by the new internal API
flatpak_dir_update_remote_configuration(), in a similar way to what
can be done via the command 'flatpak remote-modify --update-metadata'.
2016-10-14 16:42:17 +01:00
Mario Sanchez Prada 2cbb1da935 Added new parameter for the remote-modify built-in command: --update
This new command relies on flatpak_dir_update_remote_configuration()
and allows updating the local configuration for the remotes based on
the extra metadata present in the OSTree repo's summary file.

This parameter can still be combined with --title and --default-branch,
which take precedence when combined with --update.
2016-10-14 16:42:17 +01:00
Alexander Larsson 70e9b2c737 update: Support specifying multiple arguments 2016-10-14 16:39:10 +02:00
Alexander Larsson 7018717ce2 install: Support installing multiple apps at the same time
Instead of using "NAME [BRANCH]" as the command list we now
support REF..., where each REF can be partial. This is easiest
explained by examples. Here are some valid refs:

  org.test.App - only app id
  app/org.test.App/x86_64/stable - full ref
  org.test.App/x86_64/stable - full ref without prefix
  org.test.App - only app id
  org.test.App//stable - only branch
  org.test.App/x86_64 - only arch

If any parts are left out they are wildcarded. Such parts are filled
first by looking at other command line arguments like --arch and
--app/--runtime. And finally by looking at what is available in the
remote. If there are multiple matches the user is told the options
in an error message.
2016-10-14 15:45:16 +02:00
Alexander Larsson df6a5450c1 docs: Fix wrong reference to "flatpak remote-list".
This fixes https://github.com/flatpak/flatpak/issues/342
2016-10-13 09:08:21 +02:00
Tiago Gomes 847fdc657f Docs: update system-wide directory used by flatpak 2016-10-07 15:51:38 +01:00
Alexander Larsson 3b4a6fcb05 Add --default-branch options to docs 2016-10-06 12:46:07 +02:00
Adrian Perez de Castro 6cbf3b6c01 Support mixed (multilib/multiarch) binaries in Flatpaks
This adds a new "multiarch" feature which allows bundling e.g. 32-bit
binaries to be run in a x86_64 environment. By default, the seccomp
filter is configured to allow only the native architecture. When the
"multiarch" feature is enabled, the filter will be configured to allow
running binaries of additional architectures supported. For x86_64, this
allows x86 32-bit binaries; and for Aarch64, allows 32-bit ARM binaries.

Application bundles can use the feature e.g. in order to ship 32-bit
binaries alongside with a mostly-64-bit application. This is particularly
interesting when for applications that might launch themselves prebuilt
programs for which 64-bit versions do not exist. For example, the Steam
application is available as a 64-bit executable, but some of the games
available are 32-bit only. A Flatpak bundle for the Steam application
with "multiarch" enabled is able launch the 32-bit games -- without the
feature enabled, the seccomp filter would prevent them from running.

Multiple-architecture support is enabled by adding the "multiarch" value
for the "features" key in the metadata file for a Flatpak:

  [Context]
  features=multiarch;

The corresponding "--allow=multiarch" command line option is supported
in "flatpak build-finish" as well.
2016-10-03 09:54:05 +02:00
Alexander Larsson c9c35133c3 Add support for --device=kvm
Solves: https://github.com/flatpak/flatpak/issues/332
2016-09-30 16:46:51 +02:00
Alexander Larsson 270707d5ca Make flatpak enter work
This completely regressed, and it seems complicated to fix it without
requiring extra privileges. So, the new version requires you to sudo
to run it, which is not great, but at least it makes it work for
all cases.
2016-09-28 20:20:17 +02:00
Alexander Larsson 8fa7f7fe09 Add --ostree-verbose
This enables debug logging for OSTree
2016-09-27 11:37:11 +02:00
Alexander Larsson 91c9d474dd flatpak-builder: Add support for --show-deps 2016-09-20 15:58:43 +02:00
Christian Hergert fdee71b36a doc: add blurb about what --allow=devel does
This adds a short bit of text on what the --allow=devel build-finish
argument does (which allows access to perf and ptrace syscalls).
2016-09-17 10:08:39 -07:00
Matthias Clasen 18dddfca64 Add a cross-reference to flatpakrepo 2016-09-14 10:45:10 -04:00
Matthias Clasen fa23c86675 Add new man pages to the docs 2016-09-14 10:44:54 -04:00
Matthias Clasen b67ace498b Add a manpage for the flatpakrepo file format
Similar to the one for flatpakref.
2016-09-14 10:44:31 -04:00
Matthias Clasen 2c3a8cc36a Document --from for flatpak remote-add
This was missing from the docs.
2016-09-14 10:43:38 -04:00
Matthias Clasen c5559141ff Document the flatpakref file format
Add a man page with details about this file format: flatpak-flatpakref.5
2016-09-13 14:59:37 -04:00
Alexander Larsson b53b78b2a2 run: Drop/Hide --no-desktop option
This is no longer needed, as we don't hard-require systemd --user.
We keep the opion there, but hidden in order to be backwards compatible
with old code that used this.
2016-09-08 11:40:49 +02:00
Alexander Larsson aafc0f3b66 run/metadata: Add support for --allow=devel
This enables support for ptrace and perf for the app, similar
to what run -d manually gave you before. This is nice to be
able to package an app like gnome-software.
2016-09-05 21:41:14 +02:00
Alexander Larsson 23c1c22266 commit-from: Support specifying multiple refs
You can list refs, or specify none to mean every source ref
2016-08-23 16:13:04 +02:00
Alexander Larsson 0a3ca96da0 Add --no-update-summary to export, commit-from and import-bundle
We want this for e.g. the build system where we will do multiple
repo operations and then atomically regenerate the summary once.
2016-08-23 15:12:27 +02:00
Alexander Larsson 6386ea3222 build-import-bundle: Update repo similarly to build-export
This makes sure we update the summary, as well as take args for
gpg keys and whether to update the appstream branch.
2016-08-23 14:57:08 +02:00
Alexander Larsson b0a7f8052b builder: Add --sandbox support
This disables build-args support, which is nice when building things
on e.g. a shared build-machine, where we don't want the build to
be able to break out of the sandbox (by specifying e.g. --share=network).
2016-08-22 17:23:32 +02:00
Alexander Larsson 1976639153 flatpak: Add build-commit-from command
This creates new commits based on a different repo/branch. Very useful
to e.g. import and sign verified correct commits from an autobuilder
repo.
2016-08-19 17:24:03 +02:00
Alexander Larsson fb3bfae85b builder: Add --stop-at=module
Stop building at a specified module from the json file.
This is useful during development. For instance, you can do --stop-at=main-app
to build all the dependencies into the appdir, then you can do a build of an
already checked out git repo (possibly with changes).
2016-08-19 11:25:23 +02:00
Matthew Leeds 0640491e40 doc: Fix a few mistakes
- Fix typos in doc/flatpak-install and doc/flatpak-update.

- The commands ending in -app were deprecated in commit f7a1fdaa,
so update a few remaining references to them.

- flatpak-update is used for runtimes and applications, so fix its short
description.
2016-08-10 23:06:39 -04:00
Matthias Clasen e8599bb869 Clarify flatpak update docs
NAME is optional.
2016-08-04 18:40:09 -04:00
Matthias Clasen 414cd0afce Document --appstream option
This option of flatpak update was undocumented.
2016-08-04 14:08:09 -04:00
matthiasclasen 4cce620585 Merge pull request #219 from mwleeds/allow-git-paths
builder: Allow git sources to be specified as paths
2016-08-03 09:45:11 -04:00
Simon McVittie 4dd59eeecb docs: include sub-documents from $(srcdir)
This fixes "make distcheck".

Signed-off-by: Simon McVittie <smcv@debian.org>
2016-08-01 11:15:07 +01:00
Simon McVittie 6ec373a1f6 Distribute flatpak-metadata.xml in tarball releases
This was missing from 0.6.8, causing a build with xmlto available
to fail.

Signed-off-by: Simon McVittie <smcv@debian.org>
2016-08-01 11:09:07 +01:00
Alexander Larsson 07b342a937 Properly make clean the docs 2016-07-31 00:11:31 +02:00
Matthew Leeds 25d88477c5 builder: Allow git sources to be specified as paths
Currently to use a local copy of a git repo you have to specify the url
as "file:///path/to/repo". This commit allows you to specify a path directly
as "/path/to/repo", which is faster and more space-efficient because
git-clone will hardlink the objects rather than copying them.
2016-07-29 16:01:30 -04:00
Alexander Larsson 003ef9ee2e Revert "Set up logging to the journal" 2016-07-29 00:24:43 +02:00
Matthias Clasen 003d96e3df Add an --arch option to flatpak list
This enables filtering by arch when listing installations.
2016-07-26 13:39:57 -04:00
Matthias Clasen 6e0d8e394e Document the new option 2016-07-25 10:36:00 -04:00
matthiasclasen 5216540b7b Merge pull request #205 from mwleeds/fix-typos
doc/flatpak-builder: Fix typos
2016-07-23 15:17:28 -04:00
Matthew Leeds 783f8ba1fe doc/flatpak-builder: Fix typos 2016-07-22 15:05:15 -04:00
Matthew Leeds 90bd06304a docs: Clarify which options can be used multiple times
Some of the options do not explicitly say they can be used multiple
times even though it's clear from the code that they can. This commit
fixes that by saying so in the manpages.
2016-07-22 13:32:45 -04:00
Matthew Leeds 60fb5ec03a doc/flatpak-install: Fix duplicate option 2016-07-15 11:04:34 -04:00
Matthias Clasen bf96dd248f Build html documentation from the man pages
This will be useful for putting the docs online.
2016-07-12 00:41:13 -04:00
Alexander Larsson 92ab585e6f Merge pull request #171 from mariospr/no-desktop
flatpak-run: Add a new --no-desktop option to prevent creation of cgroups
2016-07-02 00:05:30 +02:00
Mario Sanchez Prada 8c8b91609c flatpak-run: Add a new --no-desktop option to prevent creation of cgroups
This is not intented for normal use, but it can be useful in cases where
we don't have a running session and sandboxing is not strictly required.
2016-07-01 22:12:04 +01:00