Commit Graph

305 Commits

Author SHA1 Message Date
Alexander Larsson
d00a65b683 Merge pull request #67 from spk121/spk121
Fix debug message format string
2015-04-23 08:34:45 +02:00
Mike Gran
7b6a9a8d96 Fix debug message format string
The format string %ld is incorrect for i686

* xdg-app-utils.c (load_contents): modify format string
2015-04-22 14:43:25 -07:00
Alexander Larsson
fb0948021d Make symlinks lib64 -> usr/lib64, etc if those exist in the runtime 2015-04-17 16:12:45 +02:00
Alexander Larsson
fc8db2b39e Merge pull request #65 from dsvensson/ds-no-libattr
Switch to using glibc xattrs.
2015-04-07 09:23:12 +02:00
Alexander Larsson
891594c1e3 xdg-app-builtins-list.c: Cleanup comma separator code
This leads to less duplication and avoids a dead code warning.
2015-04-07 09:21:03 +02:00
Daniel Svensson
73580f48a7 Remove dead code xdg-app-dir.c.
Introduced in daf41bab, and db191015.
2015-04-07 09:18:49 +02:00
Daniel Svensson
35ec44e012 Remove dead code xdg-app-builtins-build-init.c.
Was made dead by 734ca13f.
2015-04-07 09:18:45 +02:00
Daniel Svensson
7d6cc2c5d7 Remove dead code in xdg-app-builtins-build-finish.c.
Introduced as dead code in 85670c63.
2015-04-07 09:18:40 +02:00
Daniel Svensson
36645a680c Switch to using glibc xattrs.
Updates libglnx to reflect a similar change in that project.
2015-04-05 22:13:45 +02:00
Alexander Larsson
4845d1cf37 build-finish: Only export files with app-id prefix 2015-04-01 14:15:14 +02:00
Alexander Larsson
f39b59689d Pass name into build-init and store in metadata
We also drop this as an argument to build-export.

This lets us verify that the name is valid up-front, and having the
name in the metadata is useful for other things. For instance,
build-finish can verify that all exported files have the right prefix.
2015-04-01 14:03:51 +02:00
Alexander Larsson
61a8a1b5dc Merge pull request #64 from amigadave/master
Add COPYING to reflect license headers
2015-04-01 09:01:06 +02:00
David King
d667f4e81c Add COPYING to reflect license headers 2015-03-31 15:36:29 +01:00
Alexander Larsson
07cd13e757 Add copyright headers 0.1 2015-03-23 12:17:58 +01:00
Alexander Larsson
6b9f8407fe Merge pull request #62 from amigadave/attr-header
Check for libattr header
2015-03-23 12:10:52 +01:00
Alexander Larsson
b886cdb5c9 Fix build on older glib 2015-03-23 11:36:48 +01:00
Alexander Larsson
ee2edada58 Bump version to 0.1 2015-03-23 11:16:41 +01:00
Alexander Larsson
a4f60de77f helper: Manually apply bind flags recursively
When we do a recursive bind mount we need to also apply the
flags recursively. We do this manually by parsing /proc/self/mountinfo.
2015-03-23 11:16:41 +01:00
Alexander Larsson
b4c77b8c02 Require ostree 2015.3
This is latest version that is in fedora 21 atm. Its got some fixes
that are nice to have, but unfortunately deltas are not yet stable
in it.
2015-03-23 11:16:41 +01:00
Alexander Larsson
0eada3ef66 Fix dist 2015-03-23 11:16:41 +01:00
Alexander Larsson
a88795c4b1 fixup g_steal_pointer use 2015-03-23 11:16:41 +01:00
David King
b025874806 Check for libattr header 2015-03-21 19:04:43 +01:00
Alexander Larsson
8f427c4fb6 Use g_steal_pointer 2015-03-20 16:55:05 +01:00
Alexander Larsson
ad8164a47f Use glnx_set_error_from_errno 2015-03-20 16:45:09 +01:00
Alexander Larsson
b99e01b25b Switch to GLnxDirFd 2015-03-20 16:41:06 +01:00
Alexander Larsson
88c5c65e2d Use cleanup macros from libglnx 2015-03-20 16:36:17 +01:00
Alexander Larsson
c856556b8a Convert to g_autoptr 2015-03-20 16:33:18 +01:00
Alexander Larsson
22ac447fc6 Import libglnx 2015-03-20 15:57:22 +01:00
Alexander Larsson
db191015d4 xdg-app-dir: Move exports to update_exports
During installation of an app we rewrite and clean up the
deployed export directory, but don't actually export it.

Instead we export only the "current" version of the application
when we run update_exports (passing in which app changed). This way
we ensure that any newly exported files in the current app are exported
before we remove all dangling symlinks.

To make the symlinks properly dangle we also make the export symlinks
point use the "current" and "active" symlinks so non-current deployed
dirs don't keep an old symlink from being removed.
2015-03-11 10:25:18 +01:00
Alexander Larsson
c71c8d0b5b Make sure we initialize variables that auto-cleanup 2015-03-11 10:25:18 +01:00
Alexander Larsson
e0e23ee181 Add make-app-current 2015-03-11 10:25:15 +01:00
Alexander Larsson
e2fdfc531c Track which branch of an app is current
When installed a branch is made current, and we list this in list-apps.
This means nothing atm, but will be used to limit exports to the current
branch of an app.
2015-03-10 16:26:51 +01:00
Alexander Larsson
e055d84285 uninstal: Fix the cleanup of empty dirs 2015-03-10 16:25:21 +01:00
Alexander Larsson
f32a228887 builtins-list: Use the new helper to list refs 2015-03-10 15:31:38 +01:00
Alexander Larsson
737a516ce1 Add xdg_app_dir_list_refs[_for_name] helpers
These lists all the deployed refs in a given directory.
2015-03-10 15:30:53 +01:00
Alexander Larsson
b9e09e6df3 Remove old code handling per-app data
We no longer store the per-app data in the xdg-app dir.
2015-03-10 10:38:09 +01:00
Alexander Larsson
961c3afb1d Move update_exports out of deploy/undeploy
We call this in the builtins rather than the lowlevel deploys,
which lets us call it less times if we're doing multiple deploys
in an operation.
2015-03-10 10:14:12 +01:00
Alexander Larsson
c90f9473e1 deploy: Split the file rewriting and prefix checkout out from the exporting
We need this so that we can export an app multiple times, if you're e.g.
switching between deployed versions.
2015-03-09 17:13:04 +01:00
Alexander Larsson
957bf050bd Mount system fonts in /run/host/fonts 2015-03-06 11:26:07 +01:00
Alexander Larsson
5bfee405b1 Add metadata option to limit DRI access 2015-03-05 15:55:36 +01:00
Alexander Larsson
da62eccc46 Mount /run/media if mount-host-fs
This is where things like usb sticks etc, show up, so its important to
include.
2015-03-05 11:22:16 +01:00
Alexander Larsson
e2edb99f7c xdg-app-helper: Sort the command line parsing
This makes it easier to add new ones and avoid duplication
2015-03-05 10:35:18 +01:00
Alexander Larsson
a6a43333f4 xdg-app-helper: Flesh out usage output 2015-03-05 10:34:52 +01:00
Alexander Larsson
86cb39d30e Run each app in a custom systemd user scope (if available) 2015-03-04 14:40:17 +01:00
Alexander Larsson
c40eba6e97 Check for sys/capability.h via AC_CHECK_HEADER instead 2015-03-02 12:36:56 +01:00
Alexander Larsson
c7c201faa9 Revert "Look for libcap pkg-config file for cflags to ensure we have the headers"
This breaks gnome-continuous which doesn't have a pc file for libcap.

This reverts commit 26d9596730.
2015-03-02 12:27:09 +01:00
Alexander Larsson
26d9596730 Look for libcap pkg-config file for cflags to ensure we have the headers
We don't actually link to the library though.
2015-03-02 11:55:31 +01:00
Alexander Larsson
e3d5c2d801 Fix warning in add-remote if no summary.
We were always ref:ing the hashtable, so always allocate it.
2015-03-02 11:38:37 +01:00
Alexander Larsson
471cdba23e Move writable area from /var to ~/.var/app/$appid
Having /var writable is pretty weird for a desktop app, this
is typically a system location. Instead of doing this
we assume the user writes writable data into  ~/.var/app/$appid.
This means an app following this can run both as standalone or
as an xdg-app without changes.

If the app has access to the home directory, then this just works.  If
it does not, then we ensure we have this directory in the volatile
home directory and then bind mount in the real directory there.

We also pre-create config/data/cache subdirectories in this
directory and set XDG_DATA/CONFIG/CACHE_HOME to point to them, which
means apps that use these "just work".
2015-02-19 22:52:01 +01:00
Alexander Larsson
82895f5e36 xdg-app run: Make the helper command line a bit shorter
Now that we use getopt we can combine flags in the
commandline.
2015-02-19 20:57:53 +01:00