Xubuntu

Appendix A. Strategy Document

Introduction
Target
Areas of Focus
Community
Development
Release and Support Cycles
Seeds and Composition

Introduction

About this Document

This document will describe the strategy, vision and direction of the Xubuntu project as well as act as a guide and a reference for the Xubuntu Team.

This revised version has been written by Pasi Lallinaho with the help of Elizabeth Krumbach and Simon Steinbeiß along with numerous people in the community. This version is based on the former Xubuntu Strategy Document by Cody Somerville et al.

We wish thank to Cody Somerville, Jono Bacon, Eero Tamminen, Nico Veenkamp and Lionel Le Folgoc for their contributions to this document. Some content, ideas, and inspiration were derived from existing Ubuntu documentation.

Mission Statement

Xubuntu is a community-developed, Ubuntu-based operating system that combines elegance and ease of use. Xubuntu provides a light, stable and configurable desktop environment with conservative workflows. Xubuntu delivers a polished and unified product ready for end-users.

In addition to the technical aspects, the Xubuntu team focuses on contributor and user communities.

Target

The target audience for Xubuntu consists of users who are interested in having an elegant, easy to use, polished and unified operating system. Xubuntu is a good option for those who want a stable, configurable and/or relatively light desktop environment too. Finally, Xubuntu is an appealing choice for users who prefer conservative workflows over the newest innovations.

Xubuntu does not target users with specific skill sets or aptitudes. We want Xubuntu to be a viable option for users who are new to Linux or the Ubuntu platform, but also be appealing to more experienced users. Xubuntu does not specifically focus on new users or users migrating from Windows, but according to this ease of use, it is a good alternative for those users as well.

Xubuntu does not explicitly target users with low, modest, or high powered machines but instead targets the entire spectrum. Xubuntu's extra responsiveness and speed, among other positive traits, can be appreciated by all users, regardless of their hardware.

While Xubuntu uses Xfce, it is not specifically targeted to Xfce enthusiasts or projects and software being hosted by the Xfce project or associating (officially or unofficially) with Xfce are not guaranteed for inclusion in Xubuntu.

Areas of Focus

This part of the strategy document provides a transparent framework and a set of priorities for the whole Xubuntu development and its tasks, including but not limited to decision making processes, package selection and technical dispute resolution.

The areas of focus are presented in an abstract and simple form but are also concrete enough to be actionable. As the foundation of the Xubuntu vision, the specifications in the strategy document should not be confused with release-specific goals and priorities, but instead recognized as the principles which the release-specific goals are based on.

Focus 1: Usability

Usability is one of the most important parts of an operating system which is used on a daily basis. This is why Xubuntu should be easy to use and have an appearance that doesn't get in the way. The appearance should be an all-round experience, covering all user interfaces from booting to shutting down.

Xubuntu should be localized to allow users to work in their preferred language. Another important aspect of usability is configurability. We believe Xfce gives users the possibility to configure their system in a meaningful way; other applications should live up to this expectation at least moderately well.

While accessibility is not one of the main priorities of Xubuntu, it should be taken into serious consideration as long as it doesn't require unreasonable efforts to integrate, implement or maintain. At least common accessibility tools should be installed in the default Xubuntu installation.

Focus 2: Performance

The Xubuntu team should strive to make Xubuntu lightweight. This means every Xubuntu release should work moderately well on machines that date to a few years before the release date. This ultimately means that newer Xubuntu releases may not able to support older computers. However, it assures that the Xubuntu team is able to work on other improvements and provide a release that is able to fulfill the expectations for a modern operating system.

Users wanting the most lightweight system possible should be pointed at the minimal CD, more lightweight derivatives (such as Lubuntu) or other options.

At the start of the release cycle, the minimum system requirements should be re-evaluated to determine if they continue to be realistic.

Focus 3: Ready to Use

It is important for us to provide a polished and unified product that is ready for end-users. It is also a prerequisite to enabling Xubuntu as a useful, usable and effective desktop. Without the mentioned integration, the Xubuntu desktop will appear rough and unpolished which is unappealing to end-users.

The integration is accomplished also by selecting applications and libraries that work well with each other as well as by applying patches to assure a more bug-free system.

See Package Selection for guidelines on how to determine if an application fits in the Xubuntu stack.

Focus 4: Community

The Xubuntu community is an important force in creating Xubuntu and making it as perfect as it can be. It's essential that regular coordination between contributors work well. The infrastructure to allow good communication between the contributors as well as users is described more closely in Community and Development.

Where possible and appropriate, the Xubuntu team should work together with other communities, including other Ubuntu teams and upstream. If cooperation at a given time is not possible but would be beneficial for both parties, the Xubuntu team should try to allocate some resources to the cooperation at a later time.

Community

Xubuntu Council

The Xubuntu Council (later: council) is responsible for overseeing the development direction of Xubuntu and enabling the community to work with Xubuntu as smoothly as possible. The council serves a term of four releases/two years at a time, ending with an LTS release to allow long-term planning.

The xubuntu-council Launchpad team consists of the council members. The xubuntu-council team is the administrator for all other Xubuntu Launchpad teams, giving the council full administration access for the Xubuntu teams.

Membership

The council consists of 3 members, who are chosen by a CIVS vote. All members in the Xubuntu Team and/or direct members of any moderated subteams can be nominated, either by themselves or anybody else in the Xubuntu community with the nominees consent. The same group of people is eligible to vote.

If a council member becomes inactive for 6 months, the member shall be replaced by a new council member for the remainder of their term, elected by a new CIVS vote.

The council will decide on a chair for the whole council term. The chair will act as the official point of contact for Xubuntu.

Council operation

The council is expected to take action or respond to any issue raised within 2 weeks. If appropriate and fair, the first action can be postponement.

If at any time a majority of the Xubuntu team considers the actions of the council harmful for the project, the issue at hand should be raised to the council for reconsideration. If a resolution can't be found, the council should consult the the Ubuntu Community Council and other appropriate Ubuntu community teams. Similarly, if the council can't reach a consensus even after consulting the Xubuntu team, they should consult the Ubuntu Community Council and other appropriate Ubuntu community teams.

Xubuntu Team

The Xubuntu team is a group of individuals who are primarily responsible for the Xubuntu development.

The Xubuntu team is organized in Launchpad as xubuntu-team. The Launchpad team is moderated.

The individuals wanting to join the Xubuntu team are required to meet the criteria described below prior to applying or they will be automatically declined. Leaders for subteams can be appointed from this team. The Xubuntu team is moderated by the council.

In case a team lead is in the minority when voting on an issue that concerns their area of expertise, the team lead should be given another hearing, after which the team should take extra care in deciding about the issue and may want to consider voting on it again after more discussion. If required, the issue can be raised to the council for further consideration.

Becoming and staying a member

To be accepted to the Xubuntu team, applicants participants must demonstrate their motivation and ability to contribute to Xubuntu. This is to ensure that any Xubuntu team member has a sufficient understanding of the Xubuntu community and its operation. The different steps one must go through will also indicate that the candidate member is able to work within the guidelines, and more important, with other people and communities. To become a member, one must:

  • Commit meaningful contributions to one of the subteams, after which one can be approved to the subteam for "probation" by a subteam administrator

  • Demonstrate motivation to contribute perpetually, after which one can be approved to the Xubuntu team

To stay a member of the Xubuntu team, the member will have to have desire to continue contributing in the future. Anyone with no contributions for more than a complete cycle (6 months) should deactivate themself from the team as well as all subteams and reapply if/when they are willing to rejoin. The team administrators should purge people with no contributions in more than 6 months from the teams occasionally.

Xubuntu Users

The Launchpad team xubuntu-users is the formal top-level group of people who are interested in Xubuntu. The team is open for anybody to join.

The members of the official Launchpad group are encouraged to give user support on IRC and on the Xubuntu users mailing list as well as spread the word about Xubuntu anywhere they see fit, including but not limited to blogs, social media and conferences.

In addition to user support and advocacy, the members are free to organize as they like on social media platforms and more. If the group is considered substantial and useful enough, the Xubuntu team can name it official and help with maintaining it. All currently official teams and their administrators are listed on the Xubuntu wiki under the Website Administrators page.

Development

Coordination

The direction of the development of the project is coordinated by:

  • The Strategy Document

  • Release-specific blueprints and specifications

  • The community meetings

  • The developer communication tools listed below

Communication

For Xubuntu to be successful, its members and community must have the right tools to enable useful and helpful communication and ultimately, to help the community grow. These communication tools include the following "core" tools:

  • Mailing lists; Xubuntu-users for community support and user discussions and the Xubuntu-devel list for development discussion and coordination

  • IRC channels; #xubuntu for community support, #xubuntu-devel for development discussion and coordination and #xubuntu-offtopic for general discussion with a more relaxed mood

  • Launchpad for team organization and granting permissions and access rights via team memberships

  • The Xubuntu website for news, development articles and general information about Xubuntu

  • The Xubuntu developer area for tracking development progress and collaborating on development issues and sharing development related information on the wiki

In addition to communicating with each other and the Xubuntu community, the Xubuntu team should communicate continuosly with other Ubuntu contributors, upstream and other projects related to Xubuntu. The team members should take part in the development discussion outside Xubuntu as well to create and maintain healthy relationships with other projects and their developers.

Dispute Resolution

The Code Of Conduct (CoC) is one of the most fundamental documents in the Ubuntu community, including Xubuntu, and it functions as the base for a working community. Everybody and every communicating medium in the Xubuntu community is CoC-compliant at all times.

[Note]

To read the most recent revision of the Ubuntu Code of Conduct, refer to the Ubuntu Code of Conduct page on the Ubuntu website.

The Ubuntu Community Council can be asked to act as mediators/advisors where their expertise would be useful when the Xubuntu Council requires assistance. The Xubuntu Council and the Xubuntu team are encouraged to talk to other teams in the Ubuntu community if it helps resolving the issue.

When disputes occur, contributors are strongly encouraged to refrain from taking the disputed actions to avoid sabotaging the dispute resolution process.

Release and Support Cycles

The Xubuntu release cycle consists of 6 months from start to release, then an additional 9 month of maintenance for standard releases and 3 years of support for LTS releases. Although the Xubuntu project itself can not provide commercial support or commercial guarantees, the Xubuntu team will make every effort to conform with the acknowledged support period and provide security updates for Xubuntu packages.

For more information about the specifics of the processes related to developing a release, see Chapter 6, Processes.

Seeds and Composition

Core Components

The following packages and their technical dependencies are considered essential in composing an operating system that represents the goals set previously in this document:

  • xfwm4 (Xfce4 window manager)

  • xfdesktop4 (Xfce4 desktop)

  • xfce4-panel (Xfce4 panel)

  • xfce4-session (Xfce4 session manager)

  • xfconf (Xfce4 configuration storage system)

  • xfce4-settings (Xfce4 settings manager)

  • thunar (file manager)

Unless the components mentioned above are deprecated and no longer work as they are intended, they should not be substituted or removed from the seed.

The xubuntu-core metapackage consists of the core packages as well as other important packages which contribute to the Xubuntu experience. The xubuntu-desktop metapackage depends on the core metapackage and includes additional packages to provide the full, ready to use, Xubuntu experience.

Package Selection

When considering the package selection for Xubuntu, there are two main guidelines:

  • The package must be in line with the mission statement

  • The package selection process must be conducted as objectively as possible

While the Xubuntu Technical Lead has the last word on package selection with the approval of the Xubuntu Council, it's recommended that the whole team is involved in the discussion, bringing up well thought out arguments both for and against. When appropriate, tests should be conducted to gather meaningful measurements.

Before seeding an application in Xubuntu, the following aspects should be considered:

  • Usability and integration

  • Usefulness

  • Resource consumption and size

  • Reliability

  • Localization

When measuring if a package is right for Xubuntu, the decision should not be based on an analysis of the package alone, but the target package along with its dependencies. Any package that is considered for seeding should fulfill the following requirements:

  • The package should use the GTK toolkit

  • The package should not pull in heavy libraries, especially if they will run and/or start frequently

  • The package should be well maintained upstream

The above guidelines can be omitted with the approval of the council when there are extensive benefits to seeding the package.