Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out...

48

Transcript of Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out...

Page 1: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 2: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Making a modern operating system more secure

the GNOME way

Page 3: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Happy Software Freedom Day! \o/

Page 4: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Philosophy behind GNOME

Page 5: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Inclusiveness...

Page 6: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

… end user experience

Page 7: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Accessible & usable by everyone

l10n i18n Accessibility Usability

Page 8: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Freedom

Page 9: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 10: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

“Filtering out extraneousinformation is one of the basicfunctions of consciousness”― Barry Schwarz

Page 11: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 12: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Prompts aredubious

Page 13: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Security prompts arewrong

Page 14: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Interrupting the user to make a permanent security decision is

EVIL

Page 15: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 16: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 17: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 18: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Ellisons Law:For every keystroke or click required to use a security feature the userbase declines by half.

Page 19: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 20: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

610C B252 37B3 70E9 EB21 08E8 9CEE 1B6B 059B

598E

Page 21: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 22: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 23: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 24: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 25: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 26: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 27: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 28: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 29: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 30: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Containerise all the Apps!

Page 31: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Challenges for containerised Apps

Access to X, DRI DBus, other Apps File-IO Sound, Video, Printing, … Grant access temporarily rather than

wholesale

Page 32: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

FlatpakA new way of distributingapplications in GNU/Linux

Cross-distribution deployment runtimes and applications (OSTree) Sandboxing (bubblewrap) Invisible to the user Directly connect users and app developers

Page 33: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Sandbox apps in chroot-like environments as an unprivileged user

Implements a subset of the Kernel’s user namespaces feature to isolate processes

Allows passing a list of seccomp filters to limit syscalls

BubblewrapNamespaces, cgroups, seccomp

Page 34: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Limited access to the host system by default: No access to processes outside the sandbox (namespaces) No access to the network, session bus and devices Controlled execution of certain syscalls (seccomp filters) Read-only access to the runtime and app (bind mounts) read-write access to $HOME/.var/app/$APPID Controlled access to resources (cgroups) No access to host services (e.g. X/Wayland, system bus...)

The Sandbox – classic security

very limiting by default, but there are ways of dealing with that to run real-word applications...

Page 35: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Grant access to UNIX domain sockets: X.org, Wayland, PulseAudio, System and Sesssion D-Bus... Grant access to specific devices: dri, kvm Grant access to see, use and/or own specific D-Bus names Share specific subsystems with the host (network, IPC) Fine-grained permissions for filesystem access Define extensions for runtimes or applications (e.g. l10n)

Punching holes

Page 36: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

Grant access to UNIX domain sockets: X.org, Wayland, PulseAudio, System and Sesssion D-Bus... Grant access to specific devices: dri, kvm Grant access to see, use and/or own specific D-Bus names Share specific subsystems with the host (network, IPC) Fine-grained permissions for filesystem access

Escaping the Sandbox through Portals– modern security through interactivity

Page 37: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 38: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

USB Security

Page 39: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

When do you use USB?And when not?And who else uses your USB when you’re not aware..?

Page 40: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 41: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 42: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 43: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 44: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 45: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 46: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 47: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz
Page 48: Making a modern operatingeveryone l10n i18n Accessibility Usability Freedom “Filtering out extraneous information is one of the basic functions of consciousness” ― Barry Schwarz

TM