Commit Graph

648 Commits (03ae229751cb7159f5d55571285538523cdfa155)
 

Author SHA1 Message Date
Alexander Larsson 0c25376657 Switch document portal to use strings for document ids 2015-08-26 17:26:53 +02:00
Alexander Larsson 12fbd9ff95 Make document portal use the new permission store 2015-08-26 17:11:35 +02:00
Alexander Larsson a3f4342b5a Initial version of permission store
This is a generalized store for permissions, which also will
be used by the document portal.
2015-08-26 17:11:31 +02:00
Alexander Larsson c4e500db37 Add XdgAppError 2015-08-25 13:16:34 +02:00
Alexander Larsson de004081ef Initial tests of the db 2015-08-25 13:16:34 +02:00
Alexander Larsson d9f9080967 Initial version of XdgAppDb 2015-08-25 13:16:31 +02:00
Alexander Larsson 2d0866cac8 gvdb: Add gvdb_table_get_content
This is useful if you want to apply outstanding changes to
a table withough immediately persisting it to disk.
2015-08-25 09:27:35 +02:00
Alexander Larsson a9ffa4960d Move gvdb to lib/ 2015-08-25 09:27:35 +02:00
Alexander Larsson ffa1acea75 Rename dbus file to org.freedesktop.XdgApp 2015-08-25 09:27:35 +02:00
Alexander Larsson 2238cc44c3 Change dbus name of session helper to org.freedesktop.XdgApp 2015-08-18 13:33:03 +02:00
Alexander Larsson c465c15e51 Don't list empty names in opendir
This happened in my devel system by mistake and it broke readdir.
2015-08-04 12:05:21 +02:00
Alexander Larsson f76f6a39ef document-portal: *always* use the by-app location
This is better as you can't accidentally access another apps docs (although
you can still see the backing real files)
2015-07-11 10:48:53 +02:00
Alexander Larsson 08d05a30a3 Automatically start and mount document portal in sandbox 2015-07-10 17:49:59 +02:00
Alexander Larsson 4c4c66fc2d Add GetMountPoint method for document portal
This is both to get the mount path and to have a nice way
to activate the mount.
2015-07-10 17:02:38 +02:00
Alexander Larsson 929071ad10 Import xdg-document-portal from github repo
This pulls in the daemon code from:
     https://github.com/alexlarsson/xdg-document-portal/

We need this in xdg-app because we need to set up the mounts correctly.
2015-07-10 16:56:39 +02:00
Alexander Larsson b0e1124f02 Bump version to 0.3.6 2015-07-10 12:39:54 +02:00
Alexander Larsson 0040312b07 If home is accessible, make user-dirs.dir visible in custom config dir
This makes xdg user dirs work in the sandbox too.
2015-07-10 12:36:54 +02:00
Alexander Larsson 3e1d401c6d Add NEWS file 2015-07-10 12:23:42 +02:00
Alexander Larsson 302f88e69d Restructure directories and build
This moves a all source code into separate subdirs per binary. The
helper and the generic stuff goes into lib/ which is then used by all
the others. For now this is a completely internal library, but at
some point we will probably clean it up and expose some subset.

Also, we move the dbus proxy to libexecdir.
2015-07-10 12:15:45 +02:00
Dan Nicholson ef223b6a46 helper: Add all possible architectures to seccomp filter
Ensure that the seccomp filters will be applied if someone tries to run
a non-native architecture program. This currently only covers the
various x86 architectures and was borrowed from systemd LGPL code.

https://bugs.freedesktop.org/show_bug.cgi?id=91165
2015-07-01 00:18:44 +02:00
Alexander Larsson f28b1d3082 helper: Mount extra dirs/files only after all other mounts are up
This fixes the user-dirs.dirs write being over-mapped. But it also
just make more sense.
2015-07-01 00:14:21 +02:00
Dan Nicholson ecf8ecf088 Write user-dirs.dirs under app's XDG_CONFIG_HOME
Creating the custom user-dirs.dirs under ~/.config won't work since
later the config directory gets set via XDG_CONFIG_HOME. Pass in the
app's data directory so that the the custom config directory can be
used.

https://bugs.freedesktop.org/show_bug.cgi?id=91164
2015-06-30 23:26:35 +02:00
Dan Nicholson 163b582a72 helper: Disable socket filters on x86
Filtering on socket related syscalls are not possible on x86. See
https://github.com/seccomp/libseccomp/issues/8. Disable socket filtering
until a better solution comes along.

https://bugs.freedesktop.org/show_bug.cgi?id=91162
2015-06-30 23:05:38 +02:00
Alexander Larsson 653e71d006 run: Make users fonts appear in /run/host/user-fonts 2015-06-30 20:04:05 +02:00
Alexander Larsson 22bdf350db helper: Fix typo in the socket-family blacklist
We want greater-or-equal on the last family in the list, not on the
other families.
2015-06-29 23:00:50 +02:00
Alexander Larsson 4f73eaf10b Bump version to 0.3.5 2015-06-24 14:46:51 +02:00
Alexander Larsson c7a05ae781 profile: Don't override pre-existing XDG_DATA_DIRS env vars 2015-06-24 09:31:50 +02:00
Alexander Larsson 0774aa39e2 Add xdg-app.env file for gdm 2015-06-23 11:40:11 +02:00
Alexander Larsson c5a2bb2b07 xdg-app.sh: /usr/local/share is also in the default XDG_DATA_DIRS 2015-06-23 11:38:55 +02:00
Alexander Larsson 536f1e5e3e Bump version to 0.3.4 2015-06-23 10:54:39 +02:00
Alexander Larsson f39af8d75e Avoid unnecessary escapes in desktop file exports
Strings that are regular can be used as-is rather than escaping.
This is estetically nicer, but it also allows apps that don't fully
unescape things to work better. For instance, gnome-shell didn't like
if %U is escaped.
2015-06-23 10:52:28 +02:00
Alexander Larsson 9ae639ab77 Bump version to 0.3.3 2015-06-23 09:52:28 +02:00
Alexander Larsson d52c09165c configure: Add checks for docbook xsl/dtd 2015-06-17 17:10:41 +02:00
Alexander Larsson 06cbbf9965 helper: No need for a tmpfs on /dev these days
We used to have this because / has nodev, but thats not needed
anymore as we now have bind-mounts to devices.
2015-06-17 16:59:06 +02:00
Alexander Larsson 9a8c32364a helper: Remove noremount hack now that we keep old mount flags 2015-06-17 16:59:06 +02:00
Alexander Larsson 5da240c24f helper: Keep any existing old mount flags when remounting 2015-06-17 16:59:02 +02:00
Alexander Larsson 53fc3413ea Bump version to 0.3.2 2015-06-16 16:34:49 +02:00
Alexander Larsson 14c678b1c6 update: Don't remove existing deployment if there was no updates 2015-06-16 16:33:52 +02:00
Alexander Larsson a39197c60c Bump version to 0.3.1 2015-06-04 16:03:26 +02:00
Alexander Larsson e856962cc4 helper: Clean up launched command line 2015-06-02 15:51:58 +02:00
Alexander Larsson d781e27094 run: If session helper not available, bind-mount /etc/resolv.conf
This helps in e.g development environments
2015-06-02 13:36:11 +02:00
Alexander Larsson 8241165848 helper: Don't fail if ~/.local/share/xdg-app does not exist 2015-06-02 13:33:57 +02:00
Alexander Larsson dc5431fb98 helper: Make ~/.local/share/xdg-app read-only in sandbox
There should never be a need to install or modify apps
from inside the sandbox.
2015-06-02 11:46:15 +02:00
Alexander Larsson b1aa93a9d4 Use seccomp to limit allowed syscalls
We disallow any network family but inet, inet6, unix and netlink
as the rest are generally weird old unused things.

We also have a blacklist of syscalls, some are just old unnecessary
things, some are things that are "risky", like NUMA/VM control, and
setting up custom sub-namespaces.
2015-06-02 11:14:27 +02:00
Alexander Larsson 811c512e56 helper: Make all helper functions static
Also, remove unused ones
2015-06-02 09:57:23 +02:00
Alexander Larsson 61012949d7 helper: Fix thinko due to create_file() return type change
This broke wayland/dbus socket support
2015-06-01 16:23:46 +02:00
Alexander Larsson 05ddc17ee2 Make /var/cache persistent (in app-data cache dir)
This is nice as it makes the fontconfig cache persist, which is needed
for e.g. the host fonts to not take a long time each time you start an
app.
2015-06-01 16:03:33 +02:00
Alexander Larsson 7ebbba1d64 Show version when listing apps and runtimes 2015-06-01 13:32:48 +02:00
Alexander Larsson e6df651528 Show source repo when listing apps and runtimes 2015-06-01 13:28:19 +02:00
Alexander Larsson 3cf4a0d7e6 Use xdg_app_dir_get_origin helper 2015-06-01 13:28:03 +02:00