From Fedora Project Wiki

< Workstation

Revision as of 12:17, 27 August 2014 by Uraeus (talk | contribs) (Move stuff into DONE section)

Fedora Workstation Tasklist

This document aims to outline the tasks planned for the workstation as derived from the Workstation/Workstation_PRD and Workstation/Technical_Specification. Also some general information on how to get involved.

How to get involved

There are two good steps to take to get involved. First you should decide where you think you would want to get involved. Are you a Coder? Web developer? Tester? Designer? Marketing? The tables beneath show some of the tasks we are currently looking at. We would love your help with any of them. If you are interested in joining one of these efforts send an email to the desktop@lists.fedoraproject.org introducing yourself to the project. Follow that up with either contacting the people listed directly or contact one of the working group leaders, for instance through the Fedora Workstation IRC channel, who will help put you in touch. Some of these tasks will also require you to get involved with various upstream communities.


Fedora Workstation 21

Project Name Developer/Owner Status Justification
Wayland - Input devices Peter Hutterer Top priority, blocking a lot of other items No desktop is useable without proper input devices, be that touchpad, wacom tablets, mice and similar. libinput is seeing very active development.
Wayland - Xwayland Adam Jackson/Jasper St Pierre Working to get Mutter and Xwayland to collaborate We need X support both for legacy applications and we will also keep relying on certian X technologies for the core desktop for a transition period
Wayland - clutter-gtk/subsurface Bastien Nocera not working yet
Wayland dnd Benjamin Otte Stop-gap patches by Carlos are landing for 3.14 Drag and Drop support is another area where we do not want to regress as we move to Wayland
Wayland keyboard layouts Rui Matos Half done, second round of patches need pushing
Wayland mouse accessibilty GNOME a11y team
Wayland touchpad support Peter Hutterer/Rui Matos blocks on libinput release, clutter patch exists
Wayland HiDPI display support Owen Taylor Wayland We want perfect support for HiDPI displays with Wayland as going forward those are probably going to end up being the default displays on any new system.
Multimonitor handling Monitor stacking. Edge resistance, etc Florian Muellner A lot of developers and sysadmins use multimonitor setups. We need to have best of class handling of these kind of setups.
Optimus Bastien Nocera Mode switch UI - https://bugzilla.gnome.org/show_bug.cgi?id=704387 Better support for Optimus systems are also important for a long range of power users and developers.
EGL Work on Nvidia enabling technologies in the graphics stack (basically try to help move some of their proposal forward to help encourage their Wayland support quicker) People like game developers, animation artists and similar require the binary Nvidia driver for their work, we need to work with NVidia to make sure it works really well with Wayland.
Terminal -automatic title updates Debarshi Ray working patch posted This feature will make working with a large quantity of terminals easier as identifying each one will be a lot easier.
Terminal - long-running job notification Debarshi Ray not done; difficult to integrate in bash
Terminal - improve preference dialogs Allan Day in progress general and scrolling tabs are done
Terminal -launch new window Debarshi Ray reverted after negative feedback exploring other option
Software Installer - performance Richard Hughes done (?)
Software Installer - fedora hosting + generation for app data Fedora Rel. Engineering q.v. https://fedorahosted.org/rel-eng/ticket/5721
Software Installer - better app data Ryan Lerch Underway, looking at making part of Fedora packaging guidelines The Application installer is the primary method for our users to find new software. Having good application installer metadata for all Fedora software meant to be installed with the software installer is thus crucial for our end user experience. https://fedorahosted.org/fpc/ticket/414
Install developer tools Allan Day needs design A lot of developer tools are command line and thus might not be a great fit for the application installer. Could be that for instance the Developer assistance is a better home for installing such tools. Or maybe a 3rd separate tool.
Desktop log viewer -get per-application logs David King patch exists The desktop log viewer is meant to be a good debug tool for developers and a bit easier to interact with for such purposes than the log viewer included in cockpit.
Desktop log viewer -hook up GLib logging to the journal David King will land in 3.13
Desktop log viewer - add support for activate-by-message id to journal David King needs discussion with systemd guys
Desktop log viewer - clean up logs David King suitable for crowdsourcing
Boxes side-by-side VMs Zeeshan Ali
Boxes actions without selection mode Zeeshan Ali
Adwaita theme for Qt Martin Briza We want all applications to feel native and run well in the Workstation, regardless of if they are written using GTK, Qt, Java or something else. A developer should be able to choose the tools he or she wants without having to think about how their tools of choice have been implemented.
High Contrast theme for Qt Martin Briza Accessibility is important for us and should work without a hitch accross toolkits
Wayland - Colour management Richard Hughes DONE We have a lot of users who rely on our great colour management support, like artists and animators. This is another area where we do not want to risk regressing with the Wayland switch
Wayland - GDM integration / session handling Ray Strode/Jasper St Pierre DONE As we phase in Wayland we want users to be able to freely switch between the running an X session and a Wayland session.
Terminal - theme changes (white-on-black) Debarshi Ray DONE We might need to tweak /etc/DIR_COLOURS also.
Terminal - bring back transparency Debarshi Ray DONE patch in Fedora A lot of users like this feature for a varity of reasons. Upstream not interested so we will maintain it as a Fedora patch.
Terminal - Allow disabling all keybindings in one go Matthias Clasen DONE
Terminal - search provider Debarshi Ray DONE
Software Installer -use hawkey, already the case in rawhide Richard Hughes DONE
Software Installer - folder configuration Richard Hughes DONE
full touch support in GTK+ Carlos Garnacho DONE Modern laptops and all-in-one desktops are being shipped with touchscreens. If we do not have decent touchscreen support this will start to count as a disadvantage for our product and platform. Applications needs to be made touch aware on a case by case basis as makes sense.
Rygel, Chromecast etc., firewall interaction Tomas Woerner and Bastien Nocera DONE, http://www.hadess.net/2014/06/firewalls-and-per-network-sharing.html We want desktop services to work flawlessly for users without having to fiddle with the firewall settings. Especially as the firewall getting in the way has a tendency to make people simply disable the firewall.
Totem UI refresh Bastien Nocera DONE
HIG Guidelines Allan Day DONE http://blogs.gnome.org/aday/2014/08/21/new-human-interface-guidelines-for-gnome-and-gtk/ Having a good HIG available is important to help developers who want to target our product be able to produce a nicely integrated experience. Our goal here it to make a compelling open source desktop that can stand on its own in comparison with Windows and MacOS X.

Fedora Workstation 22

wacom Peter Hutterer, Carlos Garnacho Not yet begun, will look at it later This is a crucial tool for animators and graphics artists wanting to use our platform. Working closely with Wacom on this.
hot corner / pointer barriers Rui Matos Not begun
better tiling Debarshi Ray upstream designers wary of tiling - exploring as an extension now Another crucial feature for developers working with a lot of terminals.
Allow to search selected text on Web Allan Day Under discussion
Allow to send selected text to a pastebin Allan Day Under discussion
fedora account integration Richard Hughes deferred until post-3.12/post f21
Third-party repo (chrome, etc) Currently blocked
Chrome/firefox webapps Richard Hughes/Tomas Popela A lot of desktop development these days actually come in the form of webapps. We need to integrate these apps into out platform so that they help drive people to our platform and not away from it.
Install alternative desktops Allan Day needs design While the product aims at a strongly integrated vertical system we do want to allow those users who want it to install other options even if that means they lose out on a big part of the value proposition we are trying to bring to the table with the Workstation product. Need to take care to figure out how to do it in a way that is actually useful to users yet also not introducing risk of breaking core workstation experience through for instance library incompatibilities and similar.
Docking station teardown behaviour Design team/Jon McCann design needed A lot of developers, sysadmins and other power users use a docking station at the office and then bring their laptops home in the evening to continue working. Currently we don't have a great behaviour for dealing with the external monitor appearing/disappearing, with all apps just migrating to the internal screen on disconnect.
Application grouping support Design team/Jon McCann design needed Developers and devops are task oriented more than application oriented and we want to have a way to group a large set of application/windows together and be able to deal with them as a group. So that you can have for instance 5 terminals and a browser with 10 tabs set to specific pages associated with one project and another set of applications and terminals for another project.
Design work for Developer Assistant Allan Day Initial discussions had with Dev.Exp. Team The developer assistant is likely to become of our core value adds. Need to make sure it evolves in harmony with the rest of the developer experience we are providing and that features end up in the right place.
Mylyn support added to Online accounts Not started Mylyn can be a portal for enabling developers easy access to a lot of developer resources
Keybinding overview https://wiki.gnome.org/Design/OS/HelpOverlay#System_Shortcuts
Google Drive support in Nautilus Derbashi Ray
Firefox GTK3 port Martin Stransky Patches under review Important migration to make sure Firefox can keep working as an integral part of the desktop.
Firefox screensaver inhibition Martin Stransky blocking on GTK3 port, Patches under review
Chromium screensaver inhibition Tomas Popela waiting on completion of Evolution webkit port
caldav support for general IMAP connector in Online accounts not started the generic IMAP connector should be suplemented by a general caldav one as most email servers using IMAP would be used with a caldav server
Boxes GPU passthrough Zeeshan Ali Need hardware, NVidia promised to provide some Being able to assign a separate GPU to a virtual machine is a crucial feature for a lot of developers, for instance game developers and animators
Eclipse port to GTK3 Red Hat Tools team in progress We want this premier IDE to look and feel native on the desktop
Chrome Apps integration Tomas Popela Need to discuss with Chrome guys upstream
Input – ibus Martin Briza verify Support for various kinds of language input should also be transparent across toolkits
notifications Martin Briza verify
application menu Martin Briza Verify
window decorations in Wayland (CSD) Martin Briza verify
Fleet Commander Matthew Barnes Proof of concept under development We want our systems to be deployed in large software engineering organizations. Providing good tools for managing such deployments could be an important differentiator for us.
Screencasting with audio Need community member involvement We been getting requests for better screencasting support in the desktop, needs review of current status and what can be done to improve performance and features.
eclipse-jbosstools integration? talk to jboss team about linuxapps and their needs
Wayland - IBUS Rui Matos Wayland protocol needs defining IBUS is the input system we rely in in Fedora for a large range of languages. We need IBUS support to be to notch in order not have switching to Wayland be a regression for our international userbase
Wayland On-screen keyboard Rui Matos/David King Not yet begun, needs to be synced with IBUS support. A protocol needs to be defined Important for especially non-desktop use of Wayland
Desktop log viewer - move log-triggered actions (eg SMART) from gsd David King not happening this cycle

Fedora Workstation 23

Project Name Developer/Owner Status Justification
OverlayFS jwb/dhowells kernel-playground COPR includes overlayfs - Contact person Alex Larsson for non-kernel/Docker integration This is one of the features we need to be able to do desktop containers in a nice and efficient way. This will in fact also be very useful for any kind of containers so the expectation is that once we manage to land this all Docker containers will use it.
kdbus Done by Lennart and Kay Expected to get merged over summer, kernel-playground COPR will eventually include it Important in order to have an efficient way to do data transport between containers.
Define 'portals' policy David King need to do some experimental prototyping more than for server containers, desktop containers need to be able to access various system services, like online accounts.
btrfs Kernel team/Jon McCann Design user interface for rollback feature - https://blogs.oracle.com/erwann/entry/zfs_on_the_desktop_zfs The rollback feature that btrfs will give us can improve system robustness and upgrade pains significantly. btrfs has unfortunately taken a long time to mature, but hopefully with Facebook investing heavily in it, that will quickly change.
Scriptless RPMS for desktop None assigned Good way for new community members to get involved. We want to avoid requiring scripts to be called from RPMS as far as possible as any such manual steps increase the risk for bugs and issues happening during upgrades. Working on removing the need for such things will increase overall system robustness and make upgrades less of a challenge. It also makes our updates more

alike to image based installations.

  • gsettings schemas
  • gconf schemas
  • im modules - this cache doesn't add much value, could make it optional
  • gio modules – make optional
  • pango modules – make optional
  • pixbuf loaders – make optional
  • systemd unit - not a cache – just annoying post scripts
Virtual 3D for SPICE David Arlie Need more community involvement to move forward
Polari IRC client Already somewhat done, need community involvement to take to production level
improve git GUI tool more like sourcetree? Great tooling is a big part of the issue we need to address. Especially as we try to lure developers away from MacOS making sure our development tools like gitg are top notch is crucial.
Wayland - xsettings replacement for Wayland Ryan Lortie looking at this? unassigned not a short-term priority If we ever want be be able to run the desktop without requiring some form of X Window support, then this needs to be resolved.