Commit Graph

1888 Commits

Author SHA1 Message Date
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
Alexander Larsson
5c075525a8 Allow application ids containing "-"
For a long time we have been disallowing "-" in application names,
which is different than what dbus allows for bus names. Also "-" used
to be not allowed by GApplication in glib. This is in part because
dbus object paths do *not* allow dashes, so you can't legally map
from e.g. a valid name like "org.foo-bar.gazonk" to a valid path
like "/org/foo-bar/gazonk".

This is a problem because many existing apps already use "-" in the
name, either as the last part (org.gnome.font-viewer) or because
the dns name it refers to has a dash.

This was recently discussed in the dbus community, and the result
is to recommend that "-" in the bus names be converted to "_" in object
paths.

This change makes it also allowed to have "-" in a flatpak app id.

For flatpak specifically we were relying on "-" not being allowed to
handle the case of exporting "org.foo.App-symbolic.png". If "-" is
allowed this name can conflict between apps called "org.foo.App-symbolic"
and "org.foo.App".

To handle this we add two special cases:
 * App ids can't end with "-symbolic".
 * Apps are allowed to export files with $appid-symbolic as prefix.
2016-09-16 16:44:05 +02:00
Alexander Larsson
cf47870ea6 Merge pull request #311 from chergert/master
session-helper: use proper fd with ioctl() for tty setup
2016-09-16 09:24:31 +02:00
Christian Hergert
b3489c3557 session-helper: use proper fd with ioctl() for tty setup
This was using the "from" fd from the fd_map, which will have already been
closed by time we reach this portion of the child setup.

Tracking the movement of FDs while resolving the remappings is rather
tedious and error prone, so just locate the final fd before calling
the ioctl() in child setup.
2016-09-15 21:38:06 -07:00
Alexander Larsson
c2b8ac2f63 Merge pull request #307 from muelli/crash
builder: check for name being defined in expand_modules
2016-09-15 15:43:43 +02:00
Alexander Larsson
dcfef2d29d install: Fix option args for --from
This doesn't have any args, since its type ARG_NONE.
This was causing commandline completion to add an "=" after --from
which isn't right.
2016-09-15 11:44:11 +02:00
Alexander Larsson
a5fe681032 Merge pull request #306 from matthiasclasen/flatpakref-docs
Document the flatpakref file format
2016-09-15 11:42:35 +02:00
Alexander Larsson
5e8f228cb1 Merge pull request #308 from sebras/master
run: Print errno error code consistently.
2016-09-15 11:15:40 +02:00
Sebastian Rasmussen
14a1acb1bd Add Swedish translation 2016-09-15 01:23:40 +08:00
Sebastian Rasmussen
5fe8566461 system-helper: Fix typo in action description 2016-09-15 01:23:35 +08:00
Sebastian Rasmussen
135476e69a run: Print errno error code consistently
Commit 352e761c0e started the trend
to print the errno error code when unable to open a file, make all
occurrences where files are opened print the same kind of message.
2016-09-15 01:23:05 +08:00
Sebastian Rasmussen
b21f4bf542 Prefer g_strerror() to strerror()
It handles encodins better, is thread-safe and more portable.
2016-09-15 01:22:54 +08: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
Alexander Larsson
14a11943bb update: Make --appstream work again
We need to handle opt_appstream before we try to parse the
given name as an app.
2016-09-14 16:22:55 +02:00
Tobias Mueller
72de257ec0 builder: check for name being defined in expand_modules
If this is not checked, flatpak-builder might crash like this:

Starting program: /var/tmp/flatpak/bin/flatpak-builder -v --force-clean
-v --ccache --repo=/tmp/fb.repo --gpg-sign=tobiasmue@gnome.org
/tmp/fpbuilder org.gnome.Sdk.ASan.json
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-
gnu/libthread_db.so.1".
[New Thread 0x7ffff139c700 (LWP 20407)]

Thread 1 "flatpak-builder" received signal SIGSEGV, Segmentation fault.
0x00007ffff697c770 in g_str_hash () from /lib/x86_64-linux-
gnu/libglib-2.0.so.0
(gdb) bt
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
    expanded=expanded@entry=0x7fffffffdae0, names=names@entry=0x690a40,
    error=error@entry=0x7fffffffdc08) at builder/builder-manifest.c:175
    expanded=expanded@entry=0x696158, names=names@entry=0x690a40,
    error=error@entry=0x7fffffffdc08) at builder/builder-manifest.c:169
(self=self@entry=0x696050,
    context=context@entry=0x697970, error=error@entry=0x7fffffffdc08)
    at builder/builder-manifest.c:933
    at builder/builder-main.c:349
(gdb) up
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
(gdb)
    expanded=expanded@entry=0x7fffffffdae0, names=names@entry=0x690a40,
    error=error@entry=0x7fffffffdc08) at builder/builder-manifest.c:175
175	      if (g_hash_table_lookup (names, name) != NULL)
(gdb) l
170	        return FALSE;
171
172	      *expanded = g_list_concat (*expanded, submodules);
173
174	      name = builder_module_get_name (m);
175	      if (g_hash_table_lookup (names, name) != NULL)
176	        {
177	          g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
178	                       "Duplicate modules named '%s'", name);
179	          return FALSE;
(gdb) p names
$1 = (GHashTable *) 0x690a40
(gdb) p name
$2 = 0x0
(gdb) p m
$3 = (BuilderModule *) 0x6978d0
(gdb) p *m
$4 = {parent = {g_type_instance = {g_class = 0x6959d0}, ref_count = 1,
    qdata = 0x0}, name = 0x0, subdir = 0x0, post_install = 0x0,
config_opts = 0x0, make_args = 0x0, make_install_args = 0x0, disabled
= 0,
rm_configure = 0, no_autogen = 0, no_parallel_make = 0,
no_python_timestamp_fix = 0, cmake = 0, builddir = 0, build_options =
0x0,
changes = 0x0, cleanup = 0x0, cleanup_platform = 0x0, sources = 0x0,
modules = 0x0}
(gdb)

This happens when a definition does not include a name, e.g.

            "modules": [
                {
                    "type": "archive",
                    "url": ""foo",
                    "sha256": "123"
                }
2016-09-14 15:52:14 +02:00
Alexander Larsson
1d1189aeab Fix crash if completing with NULL shell_cur
This happens if you do e.g.
  flatpak complete "flatpak install " 11

Reported by aki237
2016-09-14 14:31:33 +02:00
Alexander Larsson
eff46a9d50 Tweak po/Makevars
This fixes up the copyright owner, and turns off DEPENDS_ON_POT and
DIST_DEPENDS_ON_UPDATE_PO, which better fits with the way we use git.
2016-09-14 12:18:06 +02:00
Alexander Larsson
00383b9285 Merge pull request #305 from matthiasclasen/name-validation
More validation error reporting improvements
2016-09-14 11:57:47 +02:00
Alexander Larsson
8628ec938e HostCommand: Return actual PID
This is needed by e.g gnome-builder that want to pass this pid to
a profiler service. Its not really less secure/sandboxed this way,
because the app can launch whatever he wants in the host, which could
anyway talk back and report the real pid.
2016-09-14 10:03:15 +02: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
Matthias Clasen
06c7aca9f9 Make flatpak_is_valid_branch set a GError
Return detailed information about the problem with the branch in
the GError. Update all callers.
2016-09-13 13:28:42 -04:00
Matthias Clasen
fe91657a44 Update the docs
Update the doc comment for flatpak_is_valid_name to reflect
current reality.
2016-09-13 13:15:41 -04:00
Matthias Clasen
687cae783e Always set an error when failing name validation
This was an oversight in the previous patch to improve
name validation error messages.
2016-09-13 13:13:43 -04:00
Alexander Larsson
38a6b8d5e4 Post-release version bump 2016-09-13 15:13:20 +02:00
Alexander Larsson
bd7ab85102 Add FLATPAK_CHECK_VERSION macro
From: https://github.com/flatpak/flatpak/issues/304
2016-09-13 13:30:04 +02:00
Alexander Larsson
6a8ffa725e Merge pull request #303 from baedert/missing-newlines
build-export: Add missing \n to g_print calls
2016-09-13 09:44:33 +02:00
Timm Bäder
f4bf8eb955 build-export: Add missing \n to g_print calls 2016-09-13 09:39:36 +02:00
Alexander Larsson
db6b4c9b52 Merge pull request #297 from chergert/master
session-helper: return after sending DBus error
2016-09-13 09:19:05 +02:00
Alexander Larsson
27ef339b4d Merge pull request #298 from piotrdrag/pl-update-160912
Updated Polish translation 160912
2016-09-13 09:11:01 +02:00
Alexander Larsson
68e84e3205 Merge pull request #301 from bochecha/submodules-again
Improve git submodules... again
2016-09-13 09:02:11 +02:00
Alexander Larsson
106c9cc343 Merge pull request #302 from matthiasclasen/name-validation
Make flatpak_is_valid_name set a GError
2016-09-13 08:46:59 +02:00
Matthias Clasen
b2b281e485 Make flatpak_is_valid_name set a GError
Return detailed information about the problem with the name in
the GError. Update all callers.
2016-09-12 23:25:54 -04:00
Mathieu Bridon
d165475e17 builder: Don't fail when submodule path isn't a gitlink
This is what git itself does, so we just should do the same.

cda1bbd474/builtin/submodule--helper.c (L247-L248)
2016-09-13 00:24:42 +02:00
Mathieu Bridon
5430d4d40e builder: Properly check for gitlink trees
Instead of expecting the second word to be "commit", we should do like
git does and check for the file mode, which is 160000 for gitlink trees.

cda1bbd474/cache.h (L96)
2016-09-13 00:24:42 +02:00
Piotr Drąg
ec061cca90 Updated Polish translation 2016-09-12 18:05:27 +02:00
Piotr Drąg
4495595b89 Add more options to XGETTEXT_OPTIONS in po/Makevars
--add-comments makes translator comments appear in the .po files, and the
rest is future-proofing (in case we need msgctxt and msgid_plural later).
2016-09-12 17:52:39 +02:00
Alexander Larsson
95891501a0 Update po/ 0.6.10 2016-09-12 13:37:32 +02:00
Alexander Larsson
da38fc544c Update version/news to 0.6.10 2016-09-12 13:27:47 +02:00
Alexander Larsson
216fc73449 Update pofiles 2016-09-12 13:08:06 +02:00
Alexander Larsson
e3b346c661 lib: Add flatpak_installation_install_ref_file
This gives libflatpak API support for .flatpakref files
2016-09-12 12:13:52 +02:00
Alexander Larsson
edac377e86 origin remotes: Store main ref
If you install an app via a bundle of a .flatpakref file then
the ref of the app is also saved with the remote metadata.
2016-09-12 11:58:22 +02:00
Alexander Larsson
968d9b1169 app-info: Fix saving of features to keyfile
This was accidentally using the devices bitmask instead
2016-09-12 11:11:50 +02:00
Alexander Larsson
fba645a999 Remove unused local variables reported by clang 2016-09-12 11:11:35 +02:00
Christian Hergert
bed5eb5863 session-helper: return after sending DBus error
Make sure we let the caller know we handled the message immediately after
sending our error reply.
2016-09-12 01:37:50 -07:00
Alexander Larsson
3fafba8b1e Don't use deprecated ostree_repo_checkout_tree_at function
We now use the new (almost identical) ostree_repo_checkout_at.
2016-09-12 09:03:33 +02:00
Alexander Larsson
d287415150 Merge pull request #287 from smcv/tests
Various test fixes
2016-09-12 08:48:05 +02:00
Alexander Larsson
7bd8bd472e Merge pull request #288 from muelli/sign
build-sign: fix short help message
2016-09-12 08:43:17 +02:00