David King
d667f4e81c
Add COPYING to reflect license headers
2015-03-31 15:36:29 +01:00
Alexander Larsson
07cd13e757
Add copyright headers
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
Alexander Larsson
bac241d2e0
xdg-app-helper: Add bool type and use
2015-02-19 20:49:06 +01:00
Alexander Larsson
08227a2002
xdg-app-helper: Use getopt to parse args
...
This removes some code.
2015-02-19 20:42:42 +01:00
Alexander Larsson
c8dc4d1755
xdg-app build - clean the environment
...
For builds, reproducability and not accidentally getting
the host environment details into the build is pretty important,
so we rebuild the entire environment, controlling exactly
what gets into it.
2015-02-19 19:52:17 +01:00
Alexander Larsson
81c3c0c586
xdg-app-helper: Minor cleanup
...
This splits the file contents writing to another function.
This will be needed in another place later.
2015-02-19 17:44:34 +01:00
Alexander Larsson
cf2a39fe84
Use bind mounts instead of mknod
...
Instead of creating real device nodes we just bind mount the system
ones. This means that we require no mknod capabilities, which is good
in itself, but it also allows us to eventually run completely
unprivileged with user namespaces.
2015-02-19 17:44:34 +01:00
Alexander Larsson
6584ba71e3
Merge pull request #53 from stbergmann/master
...
Fix path
2015-02-17 16:58:39 +01:00
Stephan Bergmann
d9fabbde86
Fix path
2015-02-17 16:54:56 +01:00
Alexander Larsson
d7f186c118
build-finalize: Ensure we always create the export dir
...
Otherwise build-export fails to see we ran finalize
2015-02-17 16:20:33 +01:00
Alexander Larsson
d8ac76d467
Revert "Add share/pixmaps to build-finish exports"
...
It should be easy to just move the icons to the icons supdirectory.
Lets get rid of share/pixmap...
This reverts commit 2cacc3a67a
.
2015-02-13 21:30:47 +01:00
Alexander Larsson
bcf2b13279
Don't double-quote command when rewriting desktop files
2015-02-13 11:45:13 +01:00
Alexander Larsson
2cacc3a67a
Add share/pixmaps to build-finish exports
2015-02-13 11:45:00 +01:00
Alexander Larsson
7017710201
Apply metadata and --allow --forbid switches in xdg-app build
2015-02-13 10:57:56 +01:00