StrategyDocument
|
Size: 40645
Comment:
|
Size: 15871
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| #name Xubuntu Strategy Document | <<Include(Xubuntu/Toolbox/Menu)>><<Include(Xubuntu/Toolbox/Banner)>> <<Include(Xubuntu/Toolbox/Moving)>> |
| Line 3: | Line 4: |
| {{{ \\\ This is a draft and is not yet released. /// }}} |
||<tablestyle="float:right; font-size: 90%; width:25%; margin: 3em 0 1em 1em;" style="padding: 0.5em 1em; background-color: #f1f1f1; border: none; border-radius: 1em;"><<TableOfContents>>|| |
| Line 7: | Line 6: |
| This is the Xubuntu Strategy Document which was developed primarily by Cody Somerville (project leader at time of writing) in Spring 2008. The rationale and motivation behind the development of this document was to improve the Xubuntu project's ability to become a sustainable and healthy project. The goal is to describe the long term strategy, vision, and direction of the Xubuntu project. Xubuntu developers and contributors will utilize this document as a guide and reference to assist them in coming to decisions regarding the Xubuntu project. | == Introduction == |
| Line 9: | Line 8: |
| This document lays an important piece of foundation in the Xubuntu project. For such a critical component of a project to change, involving the entire community in the process is required to ensure that Xubuntu continues to meet the needs, requirements, and wishes of its community/target audience. When core philosophies, ideas, policies, and ideas do change then appropriate effort should be invested in releasing a new revision of this document with the applicable changes. By keeping our strategy, vision, and direction documented we help ensure that our objectives are aligned and that we move forward in a direction that is healthy for the project. | === About this document === |
| Line 11: | Line 10: |
| == Mission Statement == | 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. |
| Line 13: | Line 12: |
| Xubuntu will provide (The goal of Xubuntu is to produce) an easy to use distribution, based on Ubuntu, using Xfce as the graphical desktop, with a focus on integration, usability and performance, with a particular focus on low memory footprint. The integration in Xubuntu is at a configuration level, a toolkit level, and matching the underlying technology beneath the desktop in Ubuntu. Xubuntu will be built and developed as part of the wider Ubuntu community, based around the ideals and values of Ubuntu. | 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. |
| Line 17: | Line 24: |
| For a project to have a useful vision and strategy, it must have a target audience or group. The target audience (or group) for Xubuntu are users who are interested in having a modestly light weight, slim, fast desktop experience which retaining usability and functionality that is required to to provide an easy to use desktop environment. | 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. |
| Line 19: | Line 26: |
| Xubuntu does not target users of specific skill or aptitude. What this means is that 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. This also means that Xubuntu does not specifically focus on new users or users migrating from Windows; alternative distributions such as Ubuntu may be more appropriate for first time Linux users (especially first time Linux users who may be particularly at risk of experiencing difficulties due to lack of general experience). | 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. |
| Line 21: | Line 28: |
| Xubuntu does not exclusively target users with slow machines. Xubuntu does not exclusively target users with modest machines. Xubuntu does not exclusively target users with high powered machines. Instead, Xubuntu targets users with lower end machines but also users with faster machines as the extra responsiveness and speed is appealing to users regardless of the performance their machines are capable of. | 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. |
| Line 23: | Line 30: |
| Xubuntu is not specifically targeted to Xfce4 enthusiasts as projects/software being hosted by the Xfce4 project or associating (officially or unofficially) with Xfce4 are not guaranteed inclusion in Xubuntu over other applications which may be a better fit for Xubuntu. However, Xubuntu is a good choice for users who want an integrated, usable, and fast desktop distribution that uses Xfce4 accompanied with a strong set of GTK applications. | 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. |
| Line 25: | Line 32: |
| Other groups of users may also be good fits for Xubuntu but they are not targeted specifically at this time. | === The areas of focus === |
| Line 27: | Line 34: |
| == Xubuntu's Three Tier 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. |
| Line 29: | Line 36: |
| We will use a three tier system that defines our foci and provides a transparent, agnostic framework that can be applied to dispute resolution, package selection, policy, and our decision making processes. Our three tier system is the foundation of the Xubuntu vision and provides us with a clear set of priorities that are abstract enough to be simple but also concrete enough to be actionable. As the foundation of the Xubuntu vision, this construct is static in nature and should not be confused with release specific goals and priorities but instead recognized as the principles which the release specific goals are based on. | 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. |
| Line 31: | Line 38: |
| === Focus 1: Integration === | ''' Focus 1: Usability ''' |
| Line 33: | Line 40: |
| It is important for us to provide an integrated desktop as it is a critical component to being a useful desktop, a usable desktop, and an effective desktop. Without integration, the Xubuntu desktop will be rough and unpolished which is unappealing to our end-users. We will provide an integrated desktop by selecting packages that work well with each other and applying patches (aka "glue") to further improve the situation. For example: we will ship GTK applications that conform properly to the system's look and field; we will ship applications that integrate or interact with the Xfce4 desktop environment where the applications are mature, stable, maintainable, and provide a positive net benefit. | 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. |
| Line 35: | Line 42: |
| === Focus 2: Usability === | 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 ''' |
| Line 37: | Line 48: |
| We want Xubuntu to be usable. By this, not only do we mean we want Xubuntu to be easy to use but we also want to see Xubuntu usable in the sense that it is accessible to users who face impairments and disabilities. To accomplish this, we'll strongly consider the usability and accessibility of an application when deciding on package selection. Furthermore, we'll also invest efforts in contributing to upstream usability fixes and improvement of accessibility infrastructure. | 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. |
| Line 39: | Line 50: |
| === Focus 3: Performance === | 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 product ''' |
| Line 41: | Line 56: |
| Being lightweight, slim, and fast are all words that have been used to describe and market Xubuntu. However, over the last few releases we've noticed that not only does Xubuntu pale in comparison to some of the other Xfce4 distribution but we've also been putting on even more weight and bulk. Although it is not Xubuntu's goal nor target to provide a desktop environment which will run on the most minimal of system requirements, it is Xubuntu's goal to provide a desktop that is modest and can run with minimal problems on machines that have aged a few years. The initial target will be 128mbs-192mbs of RAM (with appropriate swap space available) and 333Mhz-400Mhz CPU. The target for a release will be evaluated at the beginning of each release cycle and updated as required. === (Unofficial) Focus 4: Community === Although not an official member of the Xubuntu Three Tier focus, community *is* most certainly a focus and priority within the Xubuntu project. Xubuntu is community driven meaning that it is developed, maintained, and supported by members of the Xubuntu community. For Xubuntu to be a healthy and successful project, it must have a healthy and successful community. Xubuntu, as a project, will aim to be composed of a vibrant, active and energized community and will attempt to accomplish this by being proactive in its development of said community. Xubuntu will host bug days, packaging jams, and other public events specifically targetted to raising awareness and interest in the Xubuntu project. == Xubuntu Community == |
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. |
| Line 51: | Line 58: |
| === Xubuntu Governance & Team Structure === | 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. |
| Line 53: | Line 60: |
| The following sections explore the Xubuntu governance and team structure. The workflow, procedures, policies, and other relevant information for the function that the team provides can be found later in this document under the "Standard Operations" header. A simple overview of this structure would show you that there are three main groups: 1. Xubuntu Users 2. Xubuntu Contributors 3. Xubuntu Council |
See the "Package Selection" section for guidelines on how to determine if an application fits in the Xubuntu stack. |
| Line 61: | Line 62: |
| Xubuntu users is a collection of users who use Xubuntu or are interested in Xubuntu. Xubuntu Contributors is a team which has several other teams as a member of it. Teams of Xubuntu contributors are a member of this team and users who are contributors but not a member of one of the sub teams are also a member of this team. Xubuntu Council is a small team of individuals from different fields in the Xubuntu community who are responsible for making important decisions about Xubuntu, providing leadership and direction, resolution of internal conflicts, and ensuring Xubuntu policies and procedures are executed as desired. Below, each section describes a team and their sub teams. In each team description, you will find a short description, rationale, membership policy, team ownership, team leadership, team responsibilities, and sub-teams. ==== Xubuntu Users ==== The Xubuntu users team is a collection of dedicated of Xubuntu users. Rationale: Provide a group for users to organize and identify themselves with. This team is non-essential. This team already exists. This is an open team. To join this team, you agree to assist other users (when you can) on IRC and the xubuntu-users mailing list. Furthermore, members of this team are encouraged to assist in Xubuntu marketing efforts. It is the member's responsibility to adhere to the terms of their membership. This team is owned by the Xubuntu Council and is lead by Xubuntu Contributors. This team team is responsible for: * Community, user support; and * Marketing. The following teams are members of this team: * Xubuntu Contributors; and * Xubuntu Council. ==== Xubuntu Contributors ==== This team exists to recognize and help coordinate Xubuntu contributors. Often contributors will join one of the sub teams directly however users who are recognized for their community support, testing, and marketing efforts would join this team directly. Rationale: To provide a team to identify Xubuntu contributors and allow for members to organize themselves. This team does not exist currently. This is a moderated team. To join, the following criteria must be met: * User has demonstrated sustained and significant contribution for a minimum of three months; * User has clear plan for future contributions; * User has detailed their contributions on their wiki page; and * the User has demonstrated a good understanding of the Xubuntu community and its operation. This team is owned by the Xubuntu Council and is led by its senior members and the Xubuntu Council. This team is responsible for: * Coordinating contribution efforts; * Community, user support; and * Marketing. The following teams are members of this team: * Xubuntu Bugsquad; * Xubuntu Documentors; and * Xubuntu Developers. ==== Xubuntu Bugsquad ==== This team exists to organize and direct Xubuntu bug triage***ing*** efforts. Members of this group will recieve all of the bug mail for Xubuntu packages and own all the Xubuntu products. Rationale: Xubuntu bug mail traffic is significant. Having this team will allow users to decide if they want to receive that bug mail and also recognize contributors who have worked on bug triage. This team does not currently exist. An alternative to this team would be to simply make an existing team the bug contact, etc. create a mailing list, and set that mailing list as the contact for the group. This would allow us to reduce the number of groups and allow for individuals to subscribe to bugmail without joining a team. This team is a moderated team. To join, the following criteria must be met: * User is interested in receiving Xubuntu bugmail; * User has demonstrated that they are capable bug triagers; and * User is interested in triaging Xubuntu bugs. This team is owned by the Xubuntu Developers and is lead by its senior members with the assitance and guidance of Xubuntu developers. This team is responsible for: * Coordinating bug triage efforts; * Managing Xubuntu products; * Working with upstream to see that bugs are fixed upstream; and * Xubuntu bug triage. The following teams are members of this team: * Xubuntu Developers ==== Xubuntu Documentors ==== The Xubuntu documentors team exists to coordinate development and maintenance of Xubuntu system documentation, Xubuntu wiki, and the Xubuntu website. Rationale: Allow select individuals (ie. recognized contributors) commit access to bazaar branch containing Xubuntu system documentation and Xubuntu website development copy. (The doc branch would be merged regularly with the official Xubuntu system documentation branch hosted by the Ubuntu documentation project core team.) Furthermore, it would allow users to organize themselves and their activities including writing wiki pages and developing the website. This team is a moderated team. To join, the following criteria must be met: * User is interested in writing system documentation and/or work on the Xubuntu website; * User has demonstrated appropriate skill (ie. written language, docbook, html, php, etc.); and * User has been a positive contributor via patches/sponsorship already. This team is owned by the Xubuntu Council and is lead by its senior members. This team is responsible for: * Writing and maintaining system documentation; * Writing and maintaining wiki pages; * Writing and managing content on Xubuntu website; and * Develop***ing*** the Xubuntu website, including theme. No other teams are a member of this team. The Xubuntu documentors team has several virtual (ie. there is no launchpad group) teams that work on specific components/projects: Xubuntu website editors, Xubuntu wiki team, and Xubuntu doc team. ==== Xubuntu Developers ==== The Xubuntu developers are individuals who have a sustained and positive record of contribution via packaging. Rationale: It is important to have a team to distinguish individuals who are recognized developers as developers are often responsible for making day to day decisions regarding packages and other development related topics. This team would also host the Xubuntu seeds. This team is a moderated team. To join, the following criteria must be met: * User has a sustained and positive record of contribution via packaging to Xubuntu; * User has demonstrated appropriate skill and trustworthiness to be entrusted with upload privileges to Xubuntu and Xubuntu related packages; and * User is willing to assist in merging, syncing, and packaging of Xubuntu related packages. This team is owned by the Xubuntu Council and is lead by its senior members. This team is responsible for: * Packaging, merging, syncing, and developing Xubuntu; * Fixing bugs; * and helping the other teams make Xubuntu rock. ==== Xubuntu Council ==== The Xubuntu council is a small group of people who have been designated as "movers and shakers". Rationale: It is important to be able to identify individuals who have been assigned with task of leading and managing the Xubuntu project. This team does not currently exist. It may be possible that a Xubuntu council is not required nor useful. This team is a restricted team. To join, the following criteria must be met: * User has extensive experience with Xubuntu and Xfce4; * User is well known within the Xubuntu and Ubuntu community; * User has demonstrated strong leadership, communication, and collaboration skills; * User has been selected to help lead Xubuntu. This team is owned by the Ubuntu Community Council and is lead by the Xubuntu Team Leaders. === Dispute Resolution === Disputes occur in every project. A project is healthy not when they experience no disputes but when they do experience disputes they're able to work through them through collaberation or come to compromise when necessary. For that to happen, there needs to be a dispute resolution process that is easy to follow and use and able to give clear, concise resolutions in the end. The Xubuntu project is no different. The Code Of Conduct is one of the most fundamental documents in the Ubuntu community. Within it, expected core standards of behavior are laid out, which while innate in most people, the document clearly defines standards of "being excellent to each other" in the Ubuntu community. |
''' Focus 4: Community ''' |
| Line 194: | Line 64: |
| Although the CoC defines these core standards of behavior, it is not intended to be a document that is used against people accused of not adhering to the concepts in it. The CoC is really intended as a document to outline clearly what the community expects. If someone is quite clearly behaving against the standards of the CoC, the CoC should not be used as evidence against them, the person is quite clearly not acting within the spirit of the community, and their actions are what they should be judged on. | 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 "Xubuntu Community" and "Xubuntu Development". |
| Line 196: | Line 66: |
| If you feel that someone is not acting within the spirit of the community and their behavior is not within the CoC, you should be careful not to shout, "You are breaking the CoC!" at them. Any accusations of unsuitable behavior should focus on their actions and why their actions are causing problems in your community. If this is not effective and the issue persists, the next step would be to ask for intervention from another community member, preferably a senior member/team leader. They may be able to act as a catalayst and assist you in resolving the dispute with minimal overhead. In situations where peer dispute resolution does not have the desired effect, the appropriate escalation would be to the Xubuntu council by adding the issue to the Xubuntu council's agenda for the next meeting. At the meeting, attending parties will explain their issues and point of view to members of the council and the council will be able to either assist in mediating the issue or provide a resolution for the involved parties. In cases where it would not be appropriate to take the issue to the Xubuntu council, one feels the issue was not dealt with correctly by the Xubuntu council, or when the Xubuntu council is not available then the next appropriate level of escalation would be to the Ubuntu Community Council. === Instigating Growth === If Xubuntu is not growing, it is dying. To ensure constant and sustained growth of the project, it is important the Xubuntu leaders stay involved and keep the community informed of developments, news, and progress. Activity and growth is viral. When activity in a project is present, it tends to generate further activity and interest. If interest and involvement is not maintained then the project's community will regress. Xubuntu will also host community events such as bug days, packaging jams, and other sessions to promote and encourage Xubuntu awareness and activity. Xubuntu contributors will be encouraged to blog about Xubuntu on their blogs and have their blogs syndicated to locations such as the Ubuntu Planet. An active effort will be made to ensure that Xubuntu related stories and articles of interest make their way to the community at large via mediums such as the planet and the Ubuntu weekly newsletter. Xubuntu contributors will work with Ubuntu counterparts and establish mutually beneficial working relationships and flows of contribution. === Communication === For Xubuntu to be succesfull, its members and community must have the right tools to enable useful and helpful communication: * The xubuntu-devel mailing list is where discussions regarding general Xubuntu development takes place. * The xubuntu-users mailing list is where discussion occurs and support given by fellow Xubuntu users. * The #xubuntu IRC channel is where real time discussion and support is given by fellow Xubuntu users. * The #xubuntu-devel IRC Channel is where real time discussion, coordination, and collaboration occurs between Xubuntu contributors. * The #xubuntu-offtopic IRC Channel is where real time, offtopic chit-chat between members of the Xubuntu community occurs. * Launchpad is used for the tracking and management of specifications and bugs for/in Xubuntu. * The Xubuntu pages on the Ubuntu wiki are used to share information about teams, getting involved, procedures, meetings, and other useful information for contributors. * The Xubuntu pages on the Ubuntu community help wiki are used to share community generated and supported Xubuntu documentation. |
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. == Xubuntu Community == === Xubuntu Project Lead (XPL) === The XPL is ultimately responsible for Xubuntu and ensuring that a quality product is able to be released on schedule. The XPL serves a term of four releases at a time, ending with an LTS release to allow long-term planning and major undertakings. The XPL is chosen by a simple majority vote. All members in the Xubuntu team are eligible to vote. Nominations are to be made in the two weeks preceding the election. Nominations may be submitted by individuals nominating themselves or someone else with their consent. Anybody in the community can nominate, but the nominee must be an active member of at least one Xubuntu subteam (excluding Xubuntu users). All nominees are required to provide a wiki page with relevant information for the voting. To read more about the requirements, see the [[Xubuntu/Processes|processes page]]. The voting should be arranged in a way that allows people in any timezone to vote. Ideally, the voting should be possible for 24 consecutive hours. Any voting method needs to fulfill the requirement to only allow members of the Xubuntu team to vote. The XPL has a casting vote on any issue. Furthermore, in extreme cases, the XPL has a veto ability. The primary purpose of the veto vote is to prevent exhausting and interminable quarrels in the community. This authority is not to be used unless consensus has not been reached even after thorough, but not overly lenghty discussions. It's also encouraged to be in touch with other Ubuntu teams and ask for advice where applicable. === Xubuntu Team === The Xubuntu team is a group of individuals who are primarily responsible for the Xubuntu development. The group is registered in Launchpad as xubuntu-team. The team is moderated. The individuals wanting to join this team are required to meet the criteria described below prior to applying or they will be automatically declined. The XPL is responsible for moderating this team. From this group, the XPL can appoint specific team leads. 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 the XPL abstains from the vote, the team leader in question has a casting vote. ''' Becoming and staying a member ''' To be accepted to this 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 will be approved to the subteam for "probation" by a subteam administrator * Demonstrate motivation to contribute perpetually, after which one will be approved to the Xubuntu team by the XPL To stay a member of this team, the members 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 === Xubuntu users is a collection of users who use and/or are interested in Xubuntu. The purpose of this group is to identify and organize Xubuntu users. The users in this group are able to vote in the Xubuntu community meetings. The members in the Xubuntu users group are encouraged to give user support on IRC and 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. |
| Line 227: | Line 105: |
| This section describes topics related specifically to Xubuntu development. | === Coordination === |
| Line 229: | Line 107: |
| === Coordination === | The direction of the development of the project is coordinated by: * The Strategy Document * Release-specific blueprints and specifications * The Xubuntu community meetings * The Xubuntu 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 * xubuntu-devel for development discussion and coordination * IRC channels * #xubuntu for community support * #xubuntu-devel for development discussion and coordination * #xubuntu-offtopic for general discussion with a more relaxed mood * Launchpad, for organizing teams as well as tracking and managing blueprints and bugs * The Xubuntu pages in the Ubuntu wiki for development coordination * The Xubuntu website for news, development articles and general information about Xubuntu 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 === |
| Line 231: | Line 131: |
| Day to day coordination of Xubuntu development is done by the senior members of the Xubuntu development team with their direction coming from the Xubuntu council, previous meetings, specifications, and other written documentation. | 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. The Ubuntu Community Council can be asked to act as mediators/advisors where their expertise would be useful when the Xubuntu team and project lead requires assistance. The Xubuntu Team and XPL are encouraged to talk any 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. The release cycle itself consists of 5 more or less overlapping stages, which are: * Planning * Developing * Testing * Releasing * Maintaining For more information about the specifics of the processes related to developing a release, see the [[Xubuntu/Processes|processes page]]. == Seeds & Composition == |
| Line 233: | Line 153: |
| Every two weeks, an Xubuntu developer meeting will be held where each attending developer will go over what they worked on over the last two weeks and problems they faced. This will be followed by discussion of pending agenda items. The meeting will be concluded with a general priority being set for the next two weeks by the Xubuntu development lead and each attending developer will describe their plans and intentions taking into account the current priorities. For bigger decisions such as release priorities, the Xubuntu council members will be responsible for making sure that developers and contributors are aware of said decisions and current project priorities. The Xubuntu council will meet monthly to discuss and review process and review pending agenda items. However, this monthly meeting should not be considered blocking - appropriate discussion via the mailing list can be just as effective and allow for quicker response times. === Release Cycle === |
=== Core Components === |
| Line 239: | Line 155: |
| ==== Designing a release ==== At the start of each release, it is important for Xubuntu to have a proper release plan and release goals. The design phase starts at the very beginning of the release cycle and ends shortly after the Ubuntu Developer Summit. Each release, the Xubuntu council and Xubuntu developers will decide on a number of specifications that are of interest and which are obtainable within Xubuntu's available resources and manpower. Specifications are documents that describe a priority, process, or feature including details such as rationale, design, implementation, dependencies, use cases, and more. A specification is not required to be created for regular release processes such as merges and syncs of Xubuntu packages. However,the topics of the specifications will be influenced by the general priorities and interests for the release set by Xubuntu council which will be inspired by Mark Shuttleworth's direction for Ubuntu. By the end of the design phase, all specifications should be close to being ready for approval. Once a specification has been approved (which will generally be done by a member of the Xubuntu council or appropriate designated delegate) then the developer responsible for developing it will begin implementation which leads us into the next phase. ==== Developing a release ==== Each release cycle, there are number of tasks that will occur everytime: * Each release, Xubuntu packages will be synced or merged with Debian as appropriate. * Each release, bugs reported by users will be reviewed, fixed, and/or passed up stream. * Each release, we will attempt to reduce our delta by pushing appropriate patches upstream. * Each release, we will profile Xubuntu to ensure we are meeting our hardware targets. * Each release, we will evaluate the seeds to ensure we are shipping the optimal software. * Each release, we will work on improving and updating the Xubuntu documentation. * Each release, we will test Xubuntu to ensure stability and uncover bugs. Otherwise, we'll be working on developing the specifications we have targeted. ==== Testing a release ==== Throughout the release cycle and even more so nearing the end, we will test Xubuntu to ensure that Xubuntu is a quality product that we are proud of and that the changes we have been making work correctly, work as expected, and do not cause regressions. The Xubuntu testing team will help ensure that when milestone ISOs are released that all tests are completed and results reported to the tracker. Xubuntu testers will also test the daily builds, upgrading through supported and unsupported release paths, and running Xubuntu to help detect problems. Xubuntu testers play an instrumental role in producing a quality product for end-users and their time is greatly valued. The daily images between milestone releases (usually called "nightly releases" or "nightly images") will typically only be tested by developers, testers and enthusiasts. The milestones ("Herds" in the case of the Fawn) are more widely announced and will be tested by a larger audience. As such, the two types of releases serve different purposes, and need to be tested differently. The most important goal with testing the nightly images is simply to find as many bugs as possible and report them with enough detail that they can be fixed. Finding the bugs ahead of the milestone crunch (in random dailies) is helpful as it gives developers more time to fix them. Timely feedback regarding nightly-image test results is important. Furthermore, in doing specific testing of the CD/DVD images it is important to focus on those aspects that are typically not used by those who simply run the latest unstable version on their system through daily updates (Such testing is of course also extremely valuable). Key points in image testing include image integrity (md5sums), Live CD and installer functionality. ==== Deploying a release ==== When it comes time to deploying a release (both milestones and final), first several conditions must be met: * Appropriate testing has been done on the image; * There are no known bugs which cause data loss or damage to hardware; * The image must not be oversized; and * Xubuntu must be of sufficient quality that it would not damage Xubuntu's, Ubuntu's, or any of the other derivative's reputation/image. When a release is made, the following steps/actions must be taken: * Release notes must be prepared and made available; * Release announcement must be written and published post release; * website news item added; * wiki updated; and * IRC channel topics updated. When a final release is made then the tour, screenshots, and download page must also be updated on the Xubuntu website. Although not essential, it would be very beneficial for contributors to blog about the release. This can be especially beneficial for milestone releases in attracting testers and reviewers to help find bugs and build hype respectively. ==== Maintaining a release ==== After a release is made, bugs and problems are bound to reported. During the period between the release and the start of the next release cycle is the optimal time to perform Stable Release Updates as long as developers do not forget to fix the issue in the next release as well once the repository opens. Once the next release cycle has started, primary focus will be on the next release and the severity/importance of the SRU candidates will be more important when decided if an SRU will be performed or not. Although Xubuntu can not provide commercial support or commercial guarantees, Xubuntu will make every effort to match the Canonical support period and provide security updates for Xubuntu packages. |
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) |
| Line 294: | Line 164: |
| === Seeds & Composition === Seeds and package composition of Xubuntu has been a touchy issue in the past. To help avoid issues and disputes, this session will describe core components of Xubuntu which will always be shipped with Xubuntu, packages/types of packages that are not appropriate for Xubuntu, and information on how to decide which packages best fit Xubuntu. ==== Core components of Xubuntu ==== Core components of Xubuntu are packages that are considered to be so fundamental that if removed/replaced then the product would no longer be Xubuntu unless Xfce4 upstream deprecates and/or replaces them or very compelling reasons required for them to be substituted. For example, there has been upstream discussion about removing the Xfce4 session manager from the stack. If this were to occur, it would be acceptable (and possibly advisable) for Xubuntu to no longer ship that package. * xfce4-session (Xfce4 Session Manager) * xfwm4 (Xfce4 Window Manager) * xfdesktop4 (Xfce4 desktop) * xfce4-panel (Xfce4 panel) * thunar (Xfce4 file manager) * xfce4-utils (Xfce4 utilities) * xfce4-mcs-manager (Xfce4 settings manager) Other applications which contribute to the Xubuntu identity as well but are not considered "critical" (and hence may be removed, replaced, etc. with solid/reasonable and concrete discussion and rationale) are: * orage (Simple Calendar) * xfce4-terminal (Xfce4 terminal emulator) * mousepad (Simple text editor) * xfce4-appfinder (Xfce4 application finder) ==== Incongruous Packages & Precidents ==== Packages that work against the our goals and our mission statement obviously aren't appropriate. However, what isn't always obvious is which packages aren't inline with those goals and the missions statement because of the flexibility in interpretation and variable perceptions one can take on certain measurements. Now that we've listed packages that we consider a "core" to Xubuntu, here are some quick rules/specific packages that probably shouldn't be in Xubuntu. * Packages that do not use GTK toolkit (ie. QT/KDE applications) should not be included at all. * Packages that use interpreted languages are generally slower and require more memory then ones that are compiled. * C is preferred over C++. * Packages that will pull in a gnome lib that is not already pulled in can be not be seeded without the review and approval of the Xubuntu council. * Applications that use a lot of libs mean more memory usage - even more so for applications that use a lib exclusively. * If possible, we should limit the number of gnome libs we pull in. However, we should not remove/change applications for alternatives to reduce the number of applications that use a gnome lib unless we can remove the lib all together with a net positive benefit. ==== Package Selection Matrix ==== To meet our performance objectives, we must be very careful about the applications we seed/include with Xubuntu; we have to think objectively and may not be biased. Applications that make it into Xubuntu must be clearly rationalized and are in the spirit of Xubuntu. The Xubuntu council and Xubuntu developers will determine if a package is right for Xubuntu by measuring and comparing elements such as usability, usefulness, memory consumption, integration, maintainability, file size, stability, translations, maturity, upstream, performance, and user demand/interest. We will call this measurement "weight" and where a package/software is more heavy, the more undesirable it is in Xubuntu. Furthermore, when measuring if a package is right for Xubuntu, your decision will not be made based on your analysis of package alone but instead the collective target package and its dependencies. First, to fit well in Xubuntu the software must be usable. It must have a good interface which doesn't makes it easy and uncomplicated for users to accomplish the desired task. There is no point of including an application in Xubuntu if it is not useful, and useful to the majority of users who will be using Xubuntu. Since users are free to install/remove/etc. software after install, we will want to include the most useful software that will give the impression that Xubuntu is a useful operating system that allows users to get what they need done done. When an application is running, it takes up memory. If an application makes use of a library, then the library is also loaded into memory which means the more libraries an application uses then the more memory it is using. Luckily, memory management is smart in that it does not store data twice. If two applications us the same lib, the lib is still only loaded into memory once (although there will still be a small portion that is unique to each application). This means that when deciding to include an application, we must not only consider its memory consumption and weight but the weight of all of its dependencies. Software is slow and takes up a lot of CPU? It might not be good for Xubuntu either. Software that is well integrated and provides a polished desktop experience is a huge benefit to Xubuntu and its users. Software that comes well integrated from upstream is desirable as it reduces the burden placed on Xubuntu developers to provide that integration (if possible) and the associated maintainability costs. Software that causes developers extra work and is more difficult to maintain (this includes software that is immature, buggy, and/or lacking a solid upstream) is a serious consideration and one that must not be taken likely. Due to manpower constraints, we should aim to reduce unrequired workload and maintenance burdens. Although not as important as some of the other elements, the amount of file space required to include an application must be considered when deciding if an application should be included. Xubuntu ships on a standard CD-ROM and space is always tight since we try to ship as many language packages as possible so that users with slow or nonexistent internet connections can use Xubuntu in their native tongue. A requirement for any software to make it into Xubuntu is that the software is tested to ensure that it has an appropriate level of stability and doesn't contain an unusually large number of bugs (which will result in more work for developers who will have to do SRUs). In cases where the software appears stable, you'll want to consider the software's "maturity". How long has it been around? How long has it been being developed? How mature are the upstream processes? How mature does the software appear overall? Xubuntu is not a testing ground for new, immature software and certainly not appropriate for new, immature, and buggy software. Furthermore, the author (or who the upstream is) of the software will only have minimal impact - an author we've worked with and know to be of high caliber helps lend credibility to software but does not provide it its self. Furthermore, software that is hosted on the Xfce4 server or a member of the xfce4 goodies project should also have only minimal influence. The merit and measured weight is more important then if it is an (un)official Xfce4 side project or not. Finally, two other possible bonus points for software is how well it is translated and the actual demand/interest from our target audience/end-users. In the future, we may develop a quantitative system to assist us in the package selection process. Furthermore, the above list of elements to consider should not be considered an exhaustive list of elements to weigh; always use common sense. === Upstream Relations === Maintaining healthy relationships with projects that are upstream of Xubuntu is an important task and delicate one at that. By maintaining healthy personal and professional relationships with upstream projects and their developers/maintainers, we allow for more fluid communication and collaboration which results in a better product for everyone. To build this relationship, developers and bug traigers alike will want to start by subscribing to upstream discussion and bug mailing lists. This will help keep you informed about bugs that get reported and fixed, allowing us to respond quickly and efficiently. Specifically with Debian, working with and keeping the delta minimal will allow us to take full advantage (ie. reducing duplication) of their efforts. In reverse, it would not necessarily be expected that Debian or Xfce4 developers would be subscribed to our discussion and bug mailing lists so we need to actively and consciously push fixes that are applicable and useful to our upstream counterparts. This gives us the added benefit of developing more one on one relations of trust and respect with the upstream developers furthering the objective of making collaboration are smooth and easy as possible. Once we begin to work more and more with upstream, we'll likely run into situations where our project disagrees with a decision that the upstream project has made. In these cases, we need to make sure that we always remain polite and objective in our evaluations. Although we will always make decisions that are best for Xubuntu, sometimes compromising with upstream is required. These situations will be handled case by case with a strong desire to always maintain the best of relations with upstream. === Dispute Resolution: Development Issues === When disputes occur in the development team (or with upstream), always remember to remain polite and civil to your fellow developers. The Xubuntu developer meetings are a great time to hash out problems with the assistance of the whole team. When developers are unable to reach consensus then normal escalation to the Xubuntu council will occur where the Xubuntu council will decide via vote. When disputes do occur, developers are strongly recommended that they withhold from making the changes under dispute to avoid sabotaging the dispute resolution process. For example, if there is an issue over package selection then developers will not go ahead and make the related changes to the seeds until the dispute is resolved. == Standard Operations == |
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. |
| Line 366: | Line 166: |
| This section describes the various standard operations of Xubuntu, their workflow, policy, procedures, and other relevant information. | 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 xubuntu-core and includes additional packages to provide the full, ready to use, Xubuntu experience. |
| Line 368: | Line 168: |
| IDEA: Get the community in the next community meeting to finish the rest of the document. === Packaging === === Documentation === === Bug Triage === === Artwork === === Testing === |
=== Package Selection === |
| Line 380: | Line 170: |
| === Support === === Marketing === |
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 Project Lead and the Xubuntu Technical Lead have the last word on package selection, 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 when there are extensive benefits to seeding the package, consensus between the Xubuntu Project Lead and Xubuntu Technical Lead as well as broad support from the Xubuntu team. |
|
|
Documents |
|
|
Archive |
|
Moving. This page has been prepared for moving to the Xubuntu Contributor Documentation. If you are about to make changes to this page, please consult the Xubuntu documentation team on #xubuntu-devel. |
Contents |
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.
The 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.
The 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 product
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 the "Package Selection" section 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 "Xubuntu Community" and "Xubuntu 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.
Xubuntu Community
Xubuntu Project Lead (XPL)
The XPL is ultimately responsible for Xubuntu and ensuring that a quality product is able to be released on schedule. The XPL serves a term of four releases at a time, ending with an LTS release to allow long-term planning and major undertakings.
The XPL is chosen by a simple majority vote. All members in the Xubuntu team are eligible to vote. Nominations are to be made in the two weeks preceding the election. Nominations may be submitted by individuals nominating themselves or someone else with their consent. Anybody in the community can nominate, but the nominee must be an active member of at least one Xubuntu subteam (excluding Xubuntu users).
All nominees are required to provide a wiki page with relevant information for the voting. To read more about the requirements, see the processes page.
The voting should be arranged in a way that allows people in any timezone to vote. Ideally, the voting should be possible for 24 consecutive hours. Any voting method needs to fulfill the requirement to only allow members of the Xubuntu team to vote.
The XPL has a casting vote on any issue. Furthermore, in extreme cases, the XPL has a veto ability. The primary purpose of the veto vote is to prevent exhausting and interminable quarrels in the community. This authority is not to be used unless consensus has not been reached even after thorough, but not overly lenghty discussions. It's also encouraged to be in touch with other Ubuntu teams and ask for advice where applicable.
Xubuntu Team
The Xubuntu team is a group of individuals who are primarily responsible for the Xubuntu development. The group is registered in Launchpad as xubuntu-team. The team is moderated.
The individuals wanting to join this team are required to meet the criteria described below prior to applying or they will be automatically declined. The XPL is responsible for moderating this team. From this group, the XPL can appoint specific team leads.
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 the XPL abstains from the vote, the team leader in question has a casting vote.
Becoming and staying a member
To be accepted to this 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 will be approved to the subteam for "probation" by a subteam administrator
- Demonstrate motivation to contribute perpetually, after which one will be approved to the Xubuntu team by the XPL
To stay a member of this team, the members 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
Xubuntu users is a collection of users who use and/or are interested in Xubuntu. The purpose of this group is to identify and organize Xubuntu users. The users in this group are able to vote in the Xubuntu community meetings. The members in the Xubuntu users group are encouraged to give user support on IRC and 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.
Xubuntu Development
Coordination
The direction of the development of the project is coordinated by:
- The Strategy Document
- Release-specific blueprints and specifications
- The Xubuntu community meetings
- The Xubuntu 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
- xubuntu-devel for development discussion and coordination
- IRC channels
- #xubuntu for community support
- #xubuntu-devel for development discussion and coordination
- #xubuntu-offtopic for general discussion with a more relaxed mood
- Launchpad, for organizing teams as well as tracking and managing blueprints and bugs
- The Xubuntu pages in the Ubuntu wiki for development coordination
- The Xubuntu website for news, development articles and general information about Xubuntu
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.
The Ubuntu Community Council can be asked to act as mediators/advisors where their expertise would be useful when the Xubuntu team and project lead requires assistance. The Xubuntu Team and XPL are encouraged to talk any 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.
The release cycle itself consists of 5 more or less overlapping stages, which are:
- Planning
- Developing
- Testing
- Releasing
- Maintaining
For more information about the specifics of the processes related to developing a release, see the processes page.
Seeds & 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 xubuntu-core 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 Project Lead and the Xubuntu Technical Lead have the last word on package selection, 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 when there are extensive benefits to seeding the package, consensus between the Xubuntu Project Lead and Xubuntu Technical Lead as well as broad support from the Xubuntu team.
Xubuntu/StrategyDocument (last edited 2016-02-16 17:58:45 by xdsl-83-150-81-40)
