User Tools

Site Tools


devdocs:2_0_roadmap

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
devdocs:2_0_roadmap [2018/07/08 19:02]
devdocs:2_0_roadmap [2018/08/30 20:04]
127.0.0.1 external edit
Line 1: Line 1:
 +====== Cucumber Linux 2.0 Roadmap ======
  
 +===== Task Status Key =====
 +For simplicity and cleanliness sake, please use the following abbreviations for the status of tasks:
 +  * NS = Not Started
 +  * HW = Help Wanted
 +  * WIP = Work in Progress
 +  * DONE = Done/​Completed
 +
 +If the status is '​HW',​ that means we are seeking developers to help with it. If you would like to help with a task that is not listed as HW (Help Wanted) or already has a developer assigned, please contact that developer directly (see https://​cucumberlinux.com/​developers.php for developer contact info). Otherwise, please contact Scott (scott@cucumberlinux.com).
 +
 +====== Release Timeline ======
 +
 +This is a rough, working release timeline. It will be update become more detailed as the 2.0 development/​release cycle progresses.
 +  * June 2018
 +    * Active development begins
 +    * cucumber-2.0 branched off of cucumber-1.1.
 +  * January 2019
 +    * Cucumber Linux 2.0 released.
 +  * November 29, 2021
 +    * Cucumber Linux 2.0 End of Full Support.
 +  * March 1, 2022
 +    * Cucumber Linux 2.0 End of Life. 
 +
 +====== Major Changes ======
 +
 +===== Packages to Add and Remove in 2.0 =====
 +
 +==== New Packages to Build and Add ====
 +
 +^ Package ​       ^ Package Group               ^ Packager ​          ^ Status ​ ^ Details ​           ^
 +| LibreSSL ​      | net-base/​libressl ​          | Scott Court        | DONE   | We will be replacing OpenSSL with LibreSSL in Cucumber Linux 2.0 due to LibreSSL'​s superior security. |
 +| Meson          | dev-general/​meson ​          | Scott Court        | NS, HW  | This was added in LFS 8.1 and some packages have hinted that they will be transitioning to the ninja/meson build system. Xorg will be switching to ninja/meson in the next release, so this will be necessary to build future X servers. |
 +| Ninja          | dev-general/​ninja ​          | Scott Court        | NS, HW  | This was added in LFS 8.1 and some packages have hinted that they will be transitioning to the ninja/meson build system. Xorg will be switching to ninja/meson in the next release, so this will be necessary to build future X servers. |
 +| i3             | x-general/​i3 ​               | Maarten Hendrickx ​ | NS      | Why not? Everyone loves i3! |
 +| OpenBox ​       | x-general/​openbox ​          | Scott Court        | NS, HW  | This will complete our goal of adding three window managers: one that can completely stand alone well (WindowMaker),​ one basic windowing manager (OpenBox) and one tiling manager (i3). |
 +| Neovim ​        | base/​neovim ​                | Scott Court        | DONE   | We will be replacing Vim with Neovim in Cucumber Linux 2.0 since Neovim is more functional, modern and secure than Vim (and Neovim still maintains backwards compatibility with Vim). |
 +| qt5            | x-general/​qt5 ​              | Scott Court        | NS, HW  | More and more stuff is coming to depend on qt5 specifically,​ so we'll add it to satisfy those packages. |
 +| rustc          | dev-general/​rustc ​          | Scott Court        | DONE   | Firefox 60 ESR requires a Rust compiler to build. |
 +==== New Features to Add to Existing Packages ====
 +
 +^ Package ​       ^ Package Group               ^ Developer ​          ^ Status ​ ^ Details ​           ^
 +| GCC            | dev-base/​gcc ​               | None                | HW      | Enable Go support ​ |
 +| LLVM           | dev-general/​llvm ​           | None                | HW      | Enable the Clang & Clang++ front ends |
 +
 +==== Packages to Import from the Extra or Testing groups ====
 +
 +These packages have already been built (or will have already been built) by the time we start building 2.0; however, they are not included in a base or general package group and are therefore not included on the installer and are not installed by default. This is a list of packages that will be moved into a mainline base or general group come Cucumber Linux 2.0.
 +
 +^ Package ​       ^ New Package Group           ^ Old Package Group           ^
 +| Pale Moon      | xapps-general/​palemoon ​     | xapps-extra/​palemoon ​       |
 +| Dovecot ​       | net-general/​dovecot ​        | net-extra/​dovecot ​          |
 +| OpenSMTPD ​     | net-general/​opensmtpd ​      | net-extra/​opensmtpd ​        |
 +| VSFTPD ​        | net-general/​vsftpd ​         | net-extra/​vsftpd ​           |
 +| mailx          | net-general/​mailx ​          | net-extra/​mailx ​            |
 +| libasr ​        | lib-general/​libasr ​         | lib-extra/​libasr ​           |
 +| libevent ​      | lib-general/​libevent ​       | lib-extra/​libevent ​         |
 +
 +
 +==== Packages to Remove ====
 +
 +^ Package ​       ^ Package Group               ^ Rationale ​                              ^
 +| OpenSSL ​       | net-base/​openssl ​           | We will be replacing OpenSSL with LibreSSL. |
 +| Vim            | base/​vim ​                   | We will be replacing Vim with Neovim. |
 +| Python 2       | lang-base/​python2 ​          | Python 2 will cease being supported at the end of 2019. |
 +
 +===== Core Package Updates =====
 +
 +^ Package ​                ^ Old Version (1.1)  ^ New Version (2.0)  ^
 +| **Kernel** |||
 +| base/​linux ​             | 4.9                | 4.14               |
 +| kernel/​linux-source ​    | 4.9                | 4.14               |
 +| **Toolchain** |||
 +| base/​glibc ​             | 2.23               | 2.27               |
 +| dev-base/​binutils ​      | 2.26               | 2.30               |
 +| dev-base/​gcc ​           | 5.3.0              | 7.3.0              |
 +| **Daemons** |||
 +| net-general/​dovecot ​    | 2.2                | 2.3                |
 +| net-general/​mariadb ​    | 10.1               | 10.3               |
 +| net-general/​rsync ​      | 3.1.2              | 3.1.3              |
 +| **Scripting Language Interpreters** |||
 +| lang-base/​perl ​         | 5.26               | 5.28               |
 +| lang-general/​php ​       | 7.2                | 7.3                |
 +| lang-base/​python3 ​      | 3.6                | 3.7                |
 +| **Libraries** |||
 +| base/​ncurses ​           | 6.0                | 6.1                |
 +| base/​readline ​          | 6.3                | 7.0                |
 +| net-base/​libressl ​      | N/A                | 2.7.3              |
 +| **Utilities** |||
 +| base/​coreutils ​         | 8.25               | 8.29               |
 +| net-base/​gnupg ​         | 2.1                | 2.2                |
 +
 +The rationale for these decisions is explained at [[https://​cucumberlinux.com/​~scott/​release_proposals/​|https://​cucumberlinux.com/​~scott/​release_proposals/​]].
 +
 +The full list of core packages can be found at the [[devdocs:​core_packages|Core Packages page]].
 +
 +====== Minor Changes/To Do List ======
 +
 +===== How to Read These Tables =====
 +
 +Here is a brief guide on how to read the tables below:
 +
 +  * #: A unique number to identify the task. Please increment this for each new task you add.
 +  * Description:​ A description of what needs to be done.
 +  * Status: The current status of this task. Please use the codes from [[devdocs:​2_0_roadmap#​task_status_key|Task Status Key]]
 +  * Developer(s):​ the developer(s) that have been assigned to this task.
 +
 +
 +===== Miscellaneous To Do List =====
 +
 +This is the to do list for miscellaneous development tasks for Cucumber Linux 2.0. For the general Cucumber Linux to do list, see the [[devdocs:​todo|To Do Page]].
 +
 +^   # ^ Status ​   ^ Developer(s) ​                ^ Description ^
 +|   1 | NS, HW    | Scott Court                  | Add multilingual support to the installer. |
 +|   2 | NS, HW    | Scott Court                  | Neaten up the installer and move configuration tasks into setup scripts. |
 +|   3 | NS        | Maarten Hendrickx ​           | Translate the installer into French. |
 +|   4 | NS        | Maarten Hendrickx ​           | Translate the installer into Dutch. |
 +|   5 | NS        | Scott Court                  | Add optional dependency resolution to Pickle. |
 +|   6 | NS        | Scott Court                  | Maybe add some way to do automatic updates? |
 +|   7 | NS        | Scott Court                  | Rewrite Pickle. |
 +|   8 | NS, HW    | Scott Court                  | Add file checksum and post installation package integrity verification to the package management system . |
 +|   9 | NS, HW    | Scott Court                  | Add support for doinstonly.sh and doupgradeonly.sh to pkgtools. Also make installpkg/​upgradepkg run the setup.* scripts. |
 +|  10 | DONE      | Scott Court                  | Make a 4.14 kernel configuration and update the kernel to 4.14. |
 +|  11 | DONE      | Maarten Hendrickx ​           | Update the toolchain and test it. |
 +|  12 | DONE      | Maarten Hendrickx ​           | Make an automated system for building the Linux from Scratch chapter 5 environment. |
 +|  13 | WIP       | Everyone ​                    | Convert the Cucumber 1.x buildscript to Cucumber 2.x buildinfo files. See assignments/​progress [[https://​docs.google.com/​spreadsheets/​d/​1wz0QenLKYio_4zqJZsloEqlsXk5LfBrb34N6jiZ60eQ/​edit#​gid=0|here]]. |
 +|  14 | WIP       | Everyone ​                    | Update packages to new versions. See assignments/​progress [[https://​docs.google.com/​spreadsheets/​d/​1wz0QenLKYio_4zqJZsloEqlsXk5LfBrb34N6jiZ60eQ/​edit#​gid=0|here]]. |
devdocs/2_0_roadmap.txt ยท Last modified: 2018/09/15 15:52 by z5t1